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

Justin Bertram updated ARTEMIS-1644:
------------------------------------
    Description: 
There is logic in the broker to detect Artemis 1.x and HornetQ clients which 
will automatically:
 * set {{anycastPrefix}} and {{multicastPrefix}} to "jms.queue." and 
"jms.topic." respectively
 * convert queue/address names in network packets

In general this works perfectly for such clients.  However, if there are 
addresses and/or queues on the broker explicitly configured with either 
"jms.queue." or "jms.topic." then these clients will not be able to access 
these resources.

The solution is two fold:
 * disable the automatic detection logic
 * support Artemis 1.x and HornetQ clients using explicitly configured 
{{anycastPrefix}} and {{multicastPrefix}} acceptor url parameters

Disabling the automatic detection logic will change the default behavior for 
any acceptor supporting the CORE protocol since it would previously support 
these older clients automatically.  It would be possible to mitigate the impact 
of this change by adding the prefix parameters to the default url in 
broker.xml, but this is not recommended as this might negatively impact 
performance for high throughput use-cases.  A comment in broker.xml will be 
added instead.

  was:
There is logic in the broker to detect legacy clients (i.e. from Artemis 1.5.x 
and HornetQ) which will:
 * automatically set anycastPrefix and multicastPrefix to "jms.queue." and 
"jms.topic." respectively
 * automatically convert queue/address names in network packets

In general this works perfectly for legacy clients.  However, if there are 
addresses or queues on the broker explicitly configured with either 
"jms.queue." or "jms.topic." then these legacy clients will not be able to 
access them.


> Legacy clients can't access addresses/queues explicitly configured with 
> "jms.queue." and "jms.topic." prefixes
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: ARTEMIS-1644
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1644
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>    Affects Versions: 2.4.0
>            Reporter: Justin Bertram
>            Assignee: Justin Bertram
>            Priority: Major
>
> There is logic in the broker to detect Artemis 1.x and HornetQ clients which 
> will automatically:
>  * set {{anycastPrefix}} and {{multicastPrefix}} to "jms.queue." and 
> "jms.topic." respectively
>  * convert queue/address names in network packets
> In general this works perfectly for such clients.  However, if there are 
> addresses and/or queues on the broker explicitly configured with either 
> "jms.queue." or "jms.topic." then these clients will not be able to access 
> these resources.
> The solution is two fold:
>  * disable the automatic detection logic
>  * support Artemis 1.x and HornetQ clients using explicitly configured 
> {{anycastPrefix}} and {{multicastPrefix}} acceptor url parameters
> Disabling the automatic detection logic will change the default behavior for 
> any acceptor supporting the CORE protocol since it would previously support 
> these older clients automatically.  It would be possible to mitigate the 
> impact of this change by adding the prefix parameters to the default url in 
> broker.xml, but this is not recommended as this might negatively impact 
> performance for high throughput use-cases.  A comment in broker.xml will be 
> added instead.



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

Reply via email to