Bug 983517 - [AMQP 1.0] correlation-id/message-id gets corrupted by broker
[AMQP 1.0] correlation-id/message-id gets corrupted by broker
Status: CLOSED CURRENTRELEASE
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: qpid-cpp (Show other bugs)
Development
Unspecified Unspecified
high Severity unspecified
: 3.0
: ---
Assigned To: Gordon Sim
Petr Matousek
:
Depends On:
Blocks: 1010399
  Show dependency treegraph
 
Reported: 2013-07-11 07:07 EDT by Gordon Sim
Modified: 2015-01-21 07:55 EST (History)
4 users (show)

See Also:
Fixed In Version: qpid-qmf-0.22-7
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2015-01-21 07:55:24 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
Apache JIRA QPID-4986 None None None Never

  None (edit)
Description Gordon Sim 2013-07-11 07:07:12 EDT
Description of problem:

A message with a string valued correlation-id (or message-id) sent to the broker over AMQP 1.0 will have the correlation-id (or message-id) changed to 1.

Version-Release number of selected component (if applicable):

qpid 0.22

How reproducible:

100%

Steps to Reproduce:
1.qpid-receive --connection-properties {protocol:amqp1.0} -f --address amq.fanout --print-headers true
2. qpid-send --connection-options {protocol:amqp1.0} --address amq.fanout --correlation-id abc

Actual results:

The receiver prints:

  CorrelationId: 1


Expected results:

correlation id should arrive at the client as it was sent by the sender (e.g. abc in this case)

Additional info:
Comment 1 Gordon Sim 2013-07-11 08:02:22 EDT
Fixed upstream: https://svn.apache.org/r1502193
Comment 2 Petr Matousek 2013-12-19 10:42:09 EST
Handling the correlation id seems to be correct now, but I still see corrupted message-id, ie:

# qpid-send --connection-options {protocol:amqp0-10} --id 5 --address "q;{create:sender}"
# qpid-send --connection-options {protocol:amqp0-10} --id testId --address q
# qpid-receive --connection-options {protocol:amqp1.0} --print-headers true --address q
MessageId: 00000000-0000-0000-0000-000000000000
Properties: {sn:1, ts:1387467367023429024}

MessageId: 00000000-0000-0000-0000-000000000000
Properties: {sn:1, ts:1387467382567140358}

NOTE: this applies also to 0-10, so if you would like to open a separate bugzilla for that, let me know.

# qpid-send --id 5 --address "q;{create:sender}"
# qpid-send --id testId --address q
# qpid-receive --print-headers true --address q
MessageId: 00000000-0000-0000-0000-000000000000
Properties: {sn:1, ts:1387467567032638630, x-amqp-0-10.routing-key:q}

MessageId: 00000000-0000-0000-0000-000000000000
Properties: {sn:1, ts:1387467573159128750, x-amqp-0-10.routing-key:q}
Comment 3 Gordon Sim 2013-12-19 13:12:57 EST
It looks to me like this is only an issue if 0-10 is involved, is that correct? In AMQP 0-10 the message-id is defined to be a UUID, so any other format can't be accurately converted. I'm not sure that is something we could fix, but if that is the extent of the issue I would certainly consider it separate from this one.
Comment 4 Petr Matousek 2013-12-20 04:54:53 EST
(In reply to Gordon Sim from comment #3)
> It looks to me like this is only an issue if 0-10 is involved..

Yes, you're right. I accidentally used 0-10 for sender in the first case.
Passing message-id works well over1.0 for various values.
Passing UUID message-id works also well over0-10, but when value is not of type UUID the following message-id '00000000-0000-0000-0000-000000000000' is shown.

So IMO there is no issue here. Thanks for notifying me.
Moving this bug back to MODIFIED.
Comment 5 Petr Matousek 2014-01-24 05:32:58 EST
This This issue has been fixed. Verified on rhel6.5 (x86_64, i386).

packages used for test:
qpid-qmf-0.22-26
qpid-cpp-*-0.22-33

-> VERIFIED

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