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

Justin Bertram commented on ARTEMIS-1794:
-----------------------------------------

What's happening is that when the acceptor uses 
{{anycastPrefix=/queue/;multicastPrefix=/topic/}} and a STOMP client subscribes 
to {{/queue/foo}} the STOMP protocol head will create an {{ANYCAST}} address 
{{foo}} and an {{ANYCAST}} queue {{foo}}. Then when a STOMP client attempts to 
send a message to {{/topic/foo}} the broker will try to update the {{ANYCAST}} 
address to be {{MULTICAST}} which results in the error. There is a related bug 
here because the prefix isn't being stripped properly when looking up the 
address. However, even after that is fixed the broker will still throw an error 
in this case because the client is attempting to send a {{MULTICAST}} message 
to an {{ANYCAST}} address. If this restriction was removed the STOMP client's 
send operation could complete, but the broker still wouldn't route the message 
and it would be silently discarded (probably confusing the user).

Can you clarify your use-case here? Perhaps the broker provides the 
functionality you're looking for in a different way.

> Confusion when auto removing a queue
> ------------------------------------
>
>                 Key: ARTEMIS-1794
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1794
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>          Components: STOMP
>    Affects Versions: 2.5.0
>            Reporter: Lionel Cons
>            Priority: Major
>
> I'm using the following settings to try to mimic ActiveMQ 5 STOMP destination 
> handling:
> {code}
> <acceptor 
> name="stomp">tcp://0.0.0.0:61613?tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;protocols=STOMP;useEpoll=true;anycastPrefix=/queue/;multicastPrefix=/topic/</acceptor>
> {code}
> This works as expected in most situations.
> However, when subscribing to a queue (via {{destination:/queue/foo}}) and 
> sending a message to an eponymous topic ({{destination:/topic/foo}}) Artemis 
> reports a fatal error:
> {code}
> AMQ119209 Can't remove routing type ANYCAST, queues exists for address foo. 
> Please delete queues before removing this routing type.
> {code}
> I guess this happens when it tries to auto delete things.
> Doing the opposite (subscribing to the queue and sending a message to the 
> topic), I get the same kind of error:
> {code}
> AMQ119209 Can't remove routing type MULTICAST, queues exists for address foo. 
> Please delete queues before removing this routing type.
> {code}



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

Reply via email to