Description of problem: When a session creates an exclusive queue and then the session is closed, the queue is / should be marked as non-exclusive. While a consumer can subscribe to such queue (meaning the queue really isnt exclusive), qpid tools still show the queue as exclusive. The reason is when cancelling the queue subscription, exclusive flag is reset properly but relevant QMF object isn't updated (see patch). Version-Release number of selected component (if applicable): 0.18-14 (seems to be in upstream = 0.22 as well) How reproducible: 100% Steps to Reproduce: 1. Create an exclusive queue, and release all subscribers /usr/share/doc/python-qpid-0.18/examples/api/drain "MyQueue; {create:receiver, node:{ x-declare:{ exclusive:true}}}" 2. check the queue exclusivity qpid-config queues Actual results: # qpid-config queues Queue Name Attributes ================================================================= MyQueue excl ae4588ea-6ddf-446c-a235-8073c1d83ace:0.0 auto-del excl # Expected results: # qpid-config queues Queue Name Attributes ================================================================= MyQueue ae4588ea-6ddf-446c-a235-8073c1d83ace:0.0 auto-del excl # Additional info: Patch to be provided.
Created attachment 752532 [details] Trivial patch proposal When releasing exclusive ownership of a queue, relevant QMF management object has to unset exclusive flag.
Btw. upstream has already fixed this in revision 1371676 (per http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/Queue.cpp?view=annotate and Queue::releaseExclusiveOwnership() method there).
I moved this to POST, but it may end up needing a narrower backport.
This bug was accidentally moved from POST to MODIFIED via an error in automation, please see mmccune with any questions