Red Hat Bugzilla – Bug 601230
clustered qpid: durable exchange state not replicated to broker joining cluster
Last modified: 2010-10-07 21:50:23 EDT
+++ This bug was initially created as a clone of Bug #559014 +++ Description of problem: If a durable exchange exists in a cluster, and a broker joins the cluster, the durable exchange is not listed for the new broker. Version-Release number of selected component (if applicable): Fails in latest 1.2 release as well as the latest upstream build (pre-1.3). How reproducible: 100% Steps to Reproduce: 1. Start a broker in a cluster at <address1> 2. Run 'qpid-config -a <address1> add exchange ExDurable direct --durable' 3. Run 'qpid-config -a <address1> add exchange Ex direct' 4. Run 'qpid-config -a <address1> exchanges' to see both newly created exchanges 5. Start another broker within the cluster at <address2>. 6. Run 'qpid-config -a <address2> exchanges'. Actual results: The output shows only exchange 'Ex' and not 'ExDurable'. Expected results: Both exchanges should be there. Additional info: Durable queues seem to work. You get the same problem if you start both brokers initially, then create the durable exchange (it appears in both), then shut down one broker and bring it back up (the durable exchange disappears). --- Additional comment from kim.vdriet@redhat.com on 2010-01-28 11:55:19 EST --- Fixed in svn r.904154 QE: This is easily tested by the above example. In addition, the same test for brokers without the store loaded should work. (Since there is no recovery in this test, there should be no difference.) --- Additional comment from jkolar@redhat.com on 2010-06-01 11:08:26 EDT --- Tested: on 752581 bug appears on 946106 does not. It has been fixed validated on RHEL 5.5 i386 / x86_64 not on RHEL4 because of no clustering packages: # rpm -qa | grep -E '(qpid|openais|rhm)' | sort -u openais-0.80.6-16.el5_5.1 openais-debuginfo-0.80.6-16.el5_5.1 python-qpid-0.7.946106-1.el5 qpid-cpp-client-0.7.946106-1.el5 qpid-cpp-client-devel-0.7.946106-1.el5 qpid-cpp-client-devel-docs-0.7.946106-1.el5 qpid-cpp-client-ssl-0.7.946106-1.el5 qpid-cpp-mrg-debuginfo-0.7.935473-1.el5 qpid-cpp-server-0.7.946106-1.el5 qpid-cpp-server-cluster-0.7.946106-1.el5 qpid-cpp-server-devel-0.7.946106-1.el5 qpid-cpp-server-ssl-0.7.946106-1.el5 qpid-cpp-server-store-0.7.946106-1.el5 qpid-cpp-server-xml-0.7.946106-1.el5 qpid-java-client-0.7.946106-3.el5 qpid-java-common-0.7.946106-3.el5 qpid-tools-0.7.946106-4.el5 rhm-docs-0.7.946106-1.el5 ->VERIFIED
Technical note added. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. New Contents: C: a durable exchange exists in a cluster, and a broker joins the cluster C: the new broker does not see the exchange F: when a new broker is added to the cluster, check for any durable exchanges that should be replicated on the new broker R: the exchange now appears on the new broker
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHSA-2010-0756.html