[ 
https://issues.apache.org/jira/browse/ARTEMIS-2409?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tomas Hofman updated ARTEMIS-2409:
----------------------------------
    Description: 
When Hornetq client connects to Artemis broker, and creates consumer with 
selector containing e.g. {{JMSMessageID}} field, selector fails to correctly 
match messages.

When using JMSMessageID as a selector, HornetQ client converts the header to 
{{HQUserID}}, while Artemis is expecting header {{AMQUserID}}.

The broker should detect a legacy HornetQ client and adjust the incoming 
selector.

{code}
String selector = "JMSMessageID = 'ID:06df8801-9719-11e9-9313-972d6542d784'";
// message with above ID exists in the queue

org.hornetq.api.core.client.ClientConsumer hqConsumer = 
hqSession.createConsumer(queueName, selector, true);
org.hornetq.api.core.client.ClientMessage message = hqConsumer.receive(1000);
assertNotNull(message); // fails
{code}

  was:
When Hornetq client connects to Artemis broker, and creates consumer with 
selector containing e.g. {{JMSMessageID}} field, selector fails to correctly 
match messages.

When using JMSMessageID as a selector, HornetQ client converts the header to 
{{HQUserID}}, while Artemis is expecting header {{AMQUserID}}.

The broker should detect a legacy HornetQ client and adjust the incoming 
selector.


> HornetQ client vs Artemis broker compatibility: issue while using 
> JMSMessageID as selector
> ------------------------------------------------------------------------------------------
>
>                 Key: ARTEMIS-2409
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-2409
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 2.9.0
>            Reporter: Tomas Hofman
>            Priority: Major
>
> When Hornetq client connects to Artemis broker, and creates consumer with 
> selector containing e.g. {{JMSMessageID}} field, selector fails to correctly 
> match messages.
> When using JMSMessageID as a selector, HornetQ client converts the header to 
> {{HQUserID}}, while Artemis is expecting header {{AMQUserID}}.
> The broker should detect a legacy HornetQ client and adjust the incoming 
> selector.
> {code}
> String selector = "JMSMessageID = 'ID:06df8801-9719-11e9-9313-972d6542d784'";
> // message with above ID exists in the queue
> org.hornetq.api.core.client.ClientConsumer hqConsumer = 
> hqSession.createConsumer(queueName, selector, true);
> org.hornetq.api.core.client.ClientMessage message = hqConsumer.receive(1000);
> assertNotNull(message); // fails
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to