Would be useful for a queue sequence number to be added to all delivered messages as a custom header.
Requirement is for a custom exchange that imposes a total order on all routed messages (messages from different publishers will be enqueued on all matching queues in the same order) and that additionally adds a sequence number to the routed messages.
This has been added to the exchange, see http://cwiki.apache.org/qpid/cheat-sheet-for-configuring-exchange-options.html to test feature
As agreed waiting for more complete test than in cpp/src/tests/ExchangeTest.cpp. Kepping ON_QA, setting NEEDINFO
Created attachment 325032 [details] Test program This test binds a number of queues to an exchange named bz452015, then sends messages to that (which will match all bindings) from a number of connections. On receiving the messages from each queue it checks that the sequence numbers form the expected sequence and that the messages are received in exactly the same order from all queues. The declaration of the exchange is not part of the attached test. So e.g. running the test after: qpid-config add exchange direct bz452015 shold fail, whereas if the exchange is deleted and then added with the correct option: qpid-config del exchange bz452015 qpid-config --sequence add exchange direct bz452015 the test should then pass. The test should work for direct, topic and fanout exchanges (if headers or xml exchange should be tested it would need minor modifications such that bindings would work correctly for those exchange types).
RHTS test qpid_test_msg_ordering_bz452015 proves that feature is implemented and functional. Validated on RHEL 4.7 / 5.2, i386 / x86_64 on packages: rhm-0.3.2804-4.el5, qpidd-0.3.719671-1.el5 rhm-0.3.2804-3.el4, qpidd-0.3.719671-4.el4 ->VERIFIED
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/RHEA-2009-0035.html