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

Dhiraj Bokde updated AMQ-5074:
------------------------------

    Attachment: AMQ-5074.patch

Patch attached to fix MQTT and ActiveMQ wildcard matching. 

> MQTT paths with empty levels are not handled correctly
> ------------------------------------------------------
>
>                 Key: AMQ-5074
>                 URL: https://issues.apache.org/jira/browse/AMQ-5074
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: MQTT
>    Affects Versions: 5.9.0
>            Reporter: Dhiraj Bokde
>             Fix For: 5.10.0
>
>         Attachments: AMQ-5074.patch
>
>
> MQTT allows empty "" names for path levels, for example /TopicA has two 
> levels, "" and TopicA, similarly TopicA/ has two levels TopicA and "". The 
> leading and trailing '/' in MQTT is significant. 
> The '/' character in MQTT paths and filters is mapped to '.' in ActiveMQ, 
> which leads to names like '.TopicA' and 'TopicA.'. However, ActiveMQ ignores 
> empty path levels, although, they are just as significant for ActiveMQ. 
> Although these path names are not common in ActiveMQ, which maybe the reason 
> why the issue hasn't been discovered until now. 
> ActiveMQ needs to treat empty levels as significant, and pattern match 
> accordingly. This requires change to 
> ActiveMQDestination.getDestinationPaths() and some code cleanup in 
> DestinationMap related classes and Destination filtering classes. A patch is 
> attached (along with unit tests) to address this issue. 



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to