mirror of
https://github.com/apache/activemq-artemis.git
synced 2025-02-06 18:18:43 +00:00
When sending, for example, to a predefined anycast address and queue from a multicast (JMS topic) producer, the routed count on the address is incremented, but the message count on the matching queue is not. No indication is given at the client end that the messages failed to get routed - the messages are just silently dropped. Fixing this problem requires a slight semantic change. The broker is now more strict in what it allows specifically with regards to auto-creation. If, for example, a JMS application attempts to send a message to a topic and the corresponding multicast address doesn't exist already or the broker cannot automatically create it or update it then sending the message will fail. Also, part of this commit moves a chunk of auto-create logic into ServerSession and adds an enum for auto-create results. Aside from helping fix this specific issue this can serve as a foundation for de-duplicating the auto-create logic spread across many of the protocol implementations.