Hide Forgot
Description of problem: exchange's property 'auto-delete' is ignored or invalid. QMF shows the 'autoDelete' property as False all the time, and delete action when last receiver unsubscribe is invalid, since the receiver makes the subscription queue and the unsubscribe is applied on that queue and not relayed to the exchange. Thus the auto-delete property is invalid for exchange -or- property should possible to set and last subscription has to be relayed to exchange to make it work. Version-Release number of selected component (if applicable): qpid-cpp-*-0.22-29 qpid-cpp-*-0.18-18 How reproducible: 100% Steps to Reproduce: 1. create a auto-delete exchange with sender ./spout "ex;{create:always, node:{type:topic,'x-declare':{'auto-delete':True}}}" 2. check QMF ./qmf2_list_objects --query-data exchange/ex | ipython 3. subscribe to the exchange, and let unsubscribe ./drain "ex" Actual results: {'_create_ts': 1386781433415679174, '_delete_ts': 0, '_object_id': {'_agent_epoch': 699, '_object_name': 'org.apache.qpid.broker:exchange:ex'}, '_schema_id': {'_class_name': 'exchange', '_hash': 'c9bb43df-44ac-63d5-cc1c-6a032025c97d', '_package_name': 'org.apache.qpid.broker', '_type': '_data'}, '_update_ts': 1386781455003296482, 'arguments': {}, 'autoDelete': False, 'bindingCount': 0, 'bindingCountHigh': 0, 'bindingCountLow': 0, 'byteDrops': 91, 'byteReceives': 91, 'byteRoutes': 0, 'durable': False, 'msgDrops': 1, 'msgReceives': 1, 'msgRoutes': 0, 'name': 'ex', 'producerCount': 0, 'producerCountHigh': 0, 'producerCountLow': 0, 'type': 'topic', 'vhostRef': {'_object_name': 'org.apache.qpid.broker:vhost:org.apache.qpid.broker:broker:amqp-broker,/'}} exchange has property 'autoDelete': False and it's not deleted after last receiver Expected results: auto-delete should work with exchanges same as with queue - OR - the property should be removed from QMF Additional info: Please move the bug on qpid-qmf based on final resolution
Fixed upstream: https://svn.apache.org/r1541058
This was tested on RHEL 6.5 i686, x86_64 with following packages: qpid-cpp-server-0.22-30.el6 qpid-cpp-server-xml-0.22-30.el6 qpid-proton-debuginfo-0.6-1.el6 qpid-cpp-debuginfo-0.22-30.el6 qpid-jca-0.22-1.el6 qpid-jca-xarecovery-0.22-1.el6 qpid-qmf-devel-0.22-25.el6 qpid-tools-0.22-7.el6 qpid-proton-c-0.6-1.el6 qpid-qmf-0.22-25.el6 python-qpid-qmf-0.22-25.el6 qpid-proton-c-devel-0.6-1.el6 qpid-java-example-0.22-5.el6 python-qpid-0.22-9.el6 qpid-cpp-client-0.22-30.el6 qpid-cpp-client-ssl-0.22-30.el6 qpid-cpp-server-devel-0.22-30.el6 qpid-java-client-0.22-5.el6 qpid-cpp-server-ssl-0.22-30.el6 qpid-java-common-0.22-5.el6 qpid-cpp-client-devel-0.22-30.el6 qpid-cpp-server-store-0.22-30.el6 qpid-cpp-client-devel-docs-0.22-30.el6 fix work as expected.