Wrong handling of useMessageIDAsCorrelationID
---------------------------------------------
Key: CAMEL-2249
URL: https://issues.apache.org/activemq/browse/CAMEL-2249
Project: Apache Camel
Issue Type: Bug
Affects Versions: 2.0.0
Reporter: Christian Schneider
Camel jms seems to contain two bug in correlation id handling.
The first shows when you have a sender that has
UseMessageIDAsCorrelationID="false" and a server that has
UseMessageIDAsCorrelationID="true". If you send a message with
correlationId="a" then the response message will contain
correlationId="<request message id>". Even if this could be a valid behaviour
as you wanted UseMessageIDAsCorrelationID="true" I don“t think it makes sense
as the sender will not be able to correlate the message. So for this case I
propose to only set the correlation id to the request message id on the server
if the correlation id of the request was not set.
The second bug seems to hide the first bug. Perhaps someone found a quick (and
wrong way to make the tests work). It shows when you set
UseMessageIDAsCorrelationID="true" on both client and server. If you send a
message with correlation id = "a" the client sends it out with this correlation
id. The server then sets the correlation id to the request message id (first
bug). Then on the client the reply is received. After that the correlation id
is set back to "a" on the client. So the tests think all is well. This part of
the code should be removed.
I have marked both problems in the code with FIXME markers in my patch. I can
also provide a patch with the solution but first I wanted to only show the
problem and provide a failing test.
Hope my explanations were not to confused ;-)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.