Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 452015 - add sequence number to delivered messages and ensure total ordering through exchange
Summary: add sequence number to delivered messages and ensure total ordering through e...
Alias: None
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: qpid-cpp
Version: 1.0
Hardware: All
OS: Linux
Target Milestone: 1.1
: ---
Assignee: Gordon Sim
QA Contact: Kim van der Riet
Depends On:
Blocks: 471305
TreeView+ depends on / blocked
Reported: 2008-06-18 17:27 UTC by Gordon Sim
Modified: 2009-02-04 15:35 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2009-02-04 15:35:10 UTC
Target Upstream Version:

Attachments (Terms of Use)
Test program (deleted)
2008-11-28 18:32 UTC, Gordon Sim
no flags Details

System ID Priority Status Summary Last Updated
Red Hat Product Errata RHEA-2009:0035 normal SHIPPED_LIVE Red Hat Enterprise MRG Messaging 1.1 Release 2009-02-04 15:33:44 UTC

Description Gordon Sim 2008-06-18 17:27:44 UTC
Would be useful for a queue sequence number to be added to all delivered
messages as a custom header.

Comment 1 Gordon Sim 2008-09-30 15:04:58 UTC
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.

Comment 2 Carl Trieloff 2008-10-23 17:30:20 UTC
This has been added to the exchange,


to test feature

Comment 4 Frantisek Reznicek 2008-11-28 11:17:51 UTC
As agreed waiting for more complete test than in cpp/src/tests/ExchangeTest.cpp.
Kepping ON_QA, setting NEEDINFO

Comment 5 Gordon Sim 2008-11-28 18:32:01 UTC
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).

Comment 6 Frantisek Reznicek 2008-12-01 10:24:35 UTC
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

Comment 8 errata-xmlrpc 2009-02-04 15:35:10 UTC
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.

Note You need to log in before you can comment on or make changes to this bug.