Abstract.reapplyInterceptor unwraps only outer CompositeDestinationFilter, but totally ignores other DestinationFilter instances.
This behaviour applies to all recent version of ActiveMQ.
It might be easily fixed by changing this code^
if (destination instanceof CompositeDestinationFilter) {
destination = ((CompositeDestinationFilter) destination).next;
}
to
while (destination instanceof org.apache.activemq.broker.region.DestinationFilter) {
destination = ((org.apache.activemq.broker.region.DestinationFilter) destination).next;
}
It's desirable to fix this in 5.19.x.