[
https://issues.apache.org/jira/browse/AMQ-9159?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17635372#comment-17635372
]
ASF subversion and git services commented on AMQ-9159:
------------------------------------------------------
Commit 29dcd3f8bf68bcb3c30acc43793caa9bb5b0d386 in activemq's branch
refs/heads/activemq-5.17.x from Christopher L. Shannon (cshannon)
[ https://gitbox.apache.org/repos/asf?p=activemq.git;h=29dcd3f8b ]
AMQ-9159 - Add a test case to verify inflight message stats for wildcard
consumer when a destination is removed
(cherry picked from commit f6e26085cfa3693b2872b1c53354c674c0cbca49)
> TopicSubscription should only remove nodes from dispatched list that match
> destination
> --------------------------------------------------------------------------------------
>
> Key: AMQ-9159
> URL: https://issues.apache.org/jira/browse/AMQ-9159
> Project: ActiveMQ
> Issue Type: Bug
> Components: Broker
> Affects Versions: 5.17.2
> Reporter: Christopher L. Shannon
> Assignee: Christopher L. Shannon
> Priority: Major
> Fix For: 5.18.0, 5.17.3
>
>
> I found a minor issue on destination removal from TopicSubscriptions where
> the dispatched list is cleared but really only nodes that match the removed
> destination should be removed. There can be multiple destinations associated
> if it's a wild card consumer. -I am putting this as minor as I don't think
> if it's a real issue in practice as you generally can't remove a destination
> from an active subscription so since they only get removed when the
> subscription is closed we would be cleaning up the entire list anyways.-
> -Either way i figure it's worth fixing. It's not easy to write a test just
> for this since closing the sub to remove the dest clears everything anyways
> (as I said) but there are plenty of existing tests that should exercise the
> change including the in flight statistics tests.-
> Edit: I found there is an API method to remove 1 destination from an active
> wildcard sub so this is a bigger deal. I have a test case that shows this
> works now and I will push it shortly. If you pass in a timeout greater than 0
> to the removeDestination() method in Region then it will just remove the sub
> from the dest and not fail. The BrokerView does this
> [here|https://github.com/apache/activemq/blob/2b81946e34805b7f08913cd37543729f2a3ed884/activemq-broker/src/main/java/org/apache/activemq/broker/jmx/BrokerView.java#L426]
> for JMX so it's definitely possible to do from JMX and by users.
> The new test shows that the statistics are correct which means the in flight
> nodes in the list are removed when the destination is gone.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)