We have run into the following limitations when it comes to managing addresses via JMX. Can the suggested changes be incorporated into a future release?
a)
You cannot view address settings via JConsole. None of the following settings which are address specific can be viewed via JConsole.
dead-letter-address
expiry-address
redelivery-delay
max-delivery-attempts
max-size-bytes
message-counter-history-day-limit
address-full-policy
b)
Class HornetQServerControl exposes a method called "addAddressSettings". This method seems to perform an add if an address does not exist and does an update if the address already exists. This makes management of addresses more challenging. Can the "addAddressSettings" throw an exception if the address already exists, and can we expose a new method called "updateAddressSettings". The update should throw an exception if the address does not exist.
c)
HornetQServerControl.addAddressSettings is not performing any data validation. For example, you can specify negative values for most numeric fields, and you can specify an invalid value of "XXX" for the "addressFullMessagePolicy" parameter. In all cases, no exception is thrown. This should be changed.
d)
If you add an address via HornetQServerControl.addAddressSettings, the address does not show up under org.hornetq/Address/Core until you also add the matching queue. We know that the address did get added since one can retrieve the address settings via HornetQServerControl.getAddressSettingsAsJSON(). This should be changed. The list of addresses being displayed under "org.hornetq/Address/Core" should always correctly reflect the addresses that exist in the system.
Thanks
Aspi Engineer
Putnam Investments