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

Christopher L. Shannon resolved AMQ-9685.
-----------------------------------------
    Resolution: Fixed

> Empty virtualName from broken queue name
> ----------------------------------------
>
>                 Key: AMQ-9685
>                 URL: https://issues.apache.org/jira/browse/AMQ-9685
>             Project: ActiveMQ Classic
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.19.0, 6.1.6
>            Reporter: Benjamin Graf
>            Assignee: Christopher L. Shannon
>            Priority: Major
>              Labels: error, virtualtopic
>             Fix For: 6.2.0, 5.19.1, 6.1.7
>
>          Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> Accidentally "invalid" queue name can lead to broken broker after throwing 
> "{{Invalid destination name: a non-empty name is required}}"
> If the destination name used is just the prefix of the virtual topic it will 
> give an error but end up partially initializing the destination in the store 
> and causing errors, including on restart.
> The best fix would be to prevent creation but this is tricky because the 
> store and destination need to be initialized before processing the virtual 
> topic interceptor and cleaning up later is risky and could lead to data loss 
> if we try and generally roll back any interceptor being applied and assume 
> any exception means we should delete the destination and store. The simplest 
> fix here is to just only match the virtual topic if the topic name is 
> actually provided and not just the prefix.
> The only downside to this change would be that is if someone now made a typo 
> and forgot the topic name and just had a prefix we end up with a destination 
> created that matches the VT prefix name which isn't great but is easily 
> fixable by cleaning up the destination vs having a bunch of errors. If really 
> necessary, creation could probably also be prevented for destinations that 
> are missing the virtual name for the VT if it is really necessary with ACLs 
> or some sort of custom ACL logic.



--
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