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

Timothy A. Bish closed ARTEMIS-5576.
------------------------------------
    Resolution: Cannot Reproduce

Testing on latest source this issue seems to have already been fixed. Please 
reopen if you can reproduce it, otherwise if the other changes should be 
brought forward I'd suggest a new issue with tests and formal description of 
their impact.

> Backslash in the JMS destination name with OpenWire
> ---------------------------------------------------
>
>                 Key: ARTEMIS-5576
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-5576
>             Project: Artemis
>          Issue Type: Bug
>          Components: OpenWire
>    Affects Versions: 2.39.0, 2.41.0
>            Reporter: Péter Kerekes
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> Using the 2.31.0 version over OpenWire a consumer subscribes to a queue 
> having {{\}} in the name e.g {{foo\foo}}. According to the web 
> console, this internally generates the {{foo\\foo}} address and queue 
> name. When a producer send message to the {{foo\foo}} this also generates 
> the {{foo\foo}} queue name internally.
> However, with versions 2.39.0 & 2.41.0 (the other version was not tested by 
> me) subscribing to {{foo\foo}} internally generates the 
> {{foo\\\\foo}} address and queue name, but sending message to 
> the {{foo\foo}} sends messages to the {{foo\\foo}} address so 
> they can not communicate with each other. I think maybe the problem relates 
> to the [this 
> commit|https://github.com/jbertram/activemq-artemis/commit/45434e848e597a36fd97ca6faf9ccc968b5891a6#diff-9c5fa40bb8a34caf64b426b440d5c1a91f08de680a89efa344a87959fd71794c]
>  where 
> {{[WildcardConfiguration.java|https://github.com/jbertram/activemq-artemis/commit/45434e848e597a36fd97ca6faf9ccc968b5891a6#diff-9c5fa40bb8a34caf64b426b440d5c1a91f08de680a89efa344a87959fd71794c]}}
>  was changed. The new {{convert}} function calls {{escape}} when the already 
> escaped {{\}} is escaped again:
> {code:java}
> private String escape(final String input, WildcardConfiguration from) {
>      String result = input.replace(escapeString, escapeString + 
> escapeString);{code}
> This convert function is called from the {{AMQConsumer.java}}:
> {code:java}
> SimpleString destinationName = 
> SimpleString.of(session.convertWildcard(openwireDestination));{code}
> However, the message sending functions use the unescaped address because it 
> is not converted.
> I think that this escaping {{\}} to {{\\}} is unnecessary in the 
> convert if the {{\}} already has been escaped earlier.
> Using {{\}} in the name is not so common, but I have not find any 
> information that the {{\}} is not allowed in the address or queue name, 
> that's why we started to use the Windows domain name with {{\}} as the 
> name.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact


Reply via email to