[ https://issues.apache.org/jira/browse/ARTEMIS-2007?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Gary Tully updated ARTEMIS-2007: -------------------------------- Summary: Messages not redistributed to consumers with matching filters when local non matching consumers are present (was: Messages not redistributed to consumers with matching filters) > Messages not redistributed to consumers with matching filters when local non > matching consumers are present > ----------------------------------------------------------------------------------------------------------- > > Key: ARTEMIS-2007 > URL: https://issues.apache.org/jira/browse/ARTEMIS-2007 > Project: ActiveMQ Artemis > Issue Type: Improvement > Components: AMQP, Broker > Affects Versions: 2.6.3 > Reporter: Sebastian T > Assignee: Gary Tully > Priority: Major > Attachments: AMQ2007Test.java, artemis-2007.zip > > Time Spent: 20m > Remaining Estimate: 0h > > We are experiencing the following issue: > # We configure an Artemis cluster with ON_DEMAND message loadbalacing and > message redistribution enabled. > # We then connect a single consumer to *queues.queue1* on node1 that has a > message filter that does NOT match a given message. > # Then we send a message to *queues.queue1* on node1. > # Then we connect a consumer to *queues.queue1* on node2 that has a filter > matching the message we sent. > We now would expect that the message on node1 currently not having any > matching consumers on node1 to be forwarded or redistributed to node2 where a > matching consumer exists. > However that is not happening the consumer on node2 does not receive the > message and in our case the message on node1 expires after some time despite > a matching consumer is connected to the cluster. > In the described scenario when we disconnect the consumer on node1 (that does > not match the message anyway) the message is redistributed to node2 and > consumed by the matching consumer. > If no consumer was connected to node1, a message is sent to node1 and only > then a matching consumer is connected to node2 the message is forwarded to > node2 as expected. > So I guess the core problem is that message redistribution of messages on > node1 is not triggered when a matching consumer is connected to node2 while a > *any* consumer already exists on node1 no matter if it actually matches the > given message. > I attached a maven test case that illustrates the issue. -- This message was sent by Atlassian Jira (v8.3.4#803005)