[ 
https://issues.apache.org/jira/browse/ARTEMIS-1015?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Gordon Sim updated ARTEMIS-1015:
--------------------------------
    Attachment: unsubscribe.py

An alternate reproducer. This is a client that directly subscribes to the 
broker topic and then on receiving the first message, closes the subscribing 
link (and the session). The queue remains on the broker and will collect any 
further messages until the point the client connection ends.


> Artemis keeps temporary queue on AMQP detach
> --------------------------------------------
>
>                 Key: ARTEMIS-1015
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1015
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>          Components: AMQP
>            Reporter: Ulf Lilleengen
>         Attachments: broker.log, router.log, unsubscribe.py
>
>
> I have a setup with 1 client subscriber connecting to a broker through a qpid 
> dispatch router which is setup with a connector to the broker and a linkRoute 
> on a particular address 'mytopic'.
> This address is configured as a multicast address in the broker config. The 
> client subscriber marks the link as non-durable, and when I query the broker 
> management, it confirms that it has a temporary non-durable queue created.
> When I connect the client directly to the broker, this temporary queue is 
> deleted when the client disconnects. If I connect through the router, the 
> temporary queue is still there with 0 consumers after the client has 
> disconnected.
> When the client closes its connection to the router, the router sends a 
> detach to the broker, but the session is left open. It looks to me that the 
> broker does not remove the temporary queue until the session is ended or the 
> connection is closed. What I would expect is that the temporary queue is 
> deleted when the link is detached.
> Attached is the logs from the broker and router.
> A reproducer: http://people.redhat.com/~ulilleen/artemis-temp-queues.tar.gz
> 1. Use configuration file from instance/etc/broker.xml 
> 2. Start broker using broker.sh
> 2. Start router using router.sh
> 3. Start client using client.sh
> 4. Disconnect client
> 5. Query broker management to see that temporary queue is still there
> This can probably be reproduced with a client just doing a detach.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to