[ 
https://issues.apache.org/jira/browse/ARTEMIS-1933?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16522401#comment-16522401
 ] 

Justin Bertram commented on ARTEMIS-1933:
-----------------------------------------

I'm having some trouble reconciling these two statements:
bq. Some consumers want to read all the foo type messages so they subscribe to 
/queue/foo.*...
bq. ...messages sent to /queue/foo.a should be split between the two [normal 
and wildcard] subscriptions.
On the surface these two statements appear to be at odds with each other. On 
one hand the wildcard consumer wants to read all the messages. However, on the 
other hand the messages the wildcard subscription receives should be split 
between itself and the matching subscriptions which means the wildcard 
subscription wouldn't receive all the messages.

If the wildcard subscription really should get all the messages then that is 
what Artemis provides (and according to the documentation that is what ActiveMQ 
5.x provides as well). If on the other hand the wildcard subscription's 
messages should be split between itself and all the other matching 
subscriptions then that sounds to me like a normal subscription which makes the 
wildcard distinction meaningless.

Lastly, you noted that the ActiveMQ 5.x documentation I cited states, 
"wildcards are not part of the JMS specification so are custom enhancements". 
I'm not clear on specifically how this relates to our discussion. Can you 
clarify?

> Wildcard subscriptions deliver queue message multiple times (STOMP)
> -------------------------------------------------------------------
>
>                 Key: ARTEMIS-1933
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1933
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>            Reporter: Lionel Cons
>            Priority: Major
>         Attachments: ARTEMIS-1933.text, broker.xml
>
>
> Here is the scenario (using STOMP):
>  - one subscription to {{/queue/test.foo}}
>  - one subscription to {{/queue/test.*}}
>  - one message sent to {{/queue/test.foo}}
> Since we are dealing with queues, the message should be load-balanced between 
> the two matching subscriptions so only one should get it. This is what 
> ActiveMQ 5 does.
> With Artemis, both subscriptions get the message.
> FWIW, I'm using {{default-address-routing-type}} to make sure destinations 
> starting with {{/queue/}} act like a queue (see ARTEMIS-1906).



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to