Description of problem: When a binding request is send using address string to an exclusive queue (held by another session) the request fails with resource-locked exception (as expected). But when the binding request is issued by qpid-tools (qpid-config) no exception is received and the binding is created. Version-Release number of selected component (if applicable): qpid-cpp-*-0.22-23.el6 How reproducible: 100% Steps to Reproduce: 1. $cppapi/drain -t 10 "q;{create:receiver, node:{x-declare:{'exclusive': True}}}" & 2. $cppapi/drain "q;{create:always,node:{x-bindings: [{ exchange: 'amq.direct', key: '' }]}}" 3. resource-locked exception (expected) 4. qpid-config bind amq.direct q 5. no exception, binding created (expected resource-locked exception) Actual results: bind using qpid-config succeeds for exclusive queue (declared by another session) Expected results: bind command fails with resource-locked exception Additional info:
Fixed upstream: https://svn.apache.org/r1537498 Note that this is a general issue with bind/unbind and exclusive queues. E.g. if you change the address in step 2. above to "amq.direct; {create:always, node:{x-bindings:[{queue:q}]}}" it will succeed in creating the binding. The reason it fails is due to the subscribe request when the node is the queue, not the bind request.
This issue has been fixed (tested both amqp0-10/1.0). Verified on rhel6.4 (i386, x86_64). packages used for testing: qpid-cpp-*-0.22-25.el6
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHEA-2014-1296.html