[
https://issues.apache.org/jira/browse/AMQ-6456?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15549109#comment-15549109
]
Gary Tully commented on AMQ-6456:
---------------------------------
This is a little difficult to reason about because the "choice" of a particular
consumer is not visible across a network of brokers.
A demand sub does not know that it is demand for the chosen exclusive consumer.
If it could figure this out, then it would know to allow replay. Maybe this
information can be added as a property to the consumer advisory message.
Can you post the xml config, or if you can produce a unit test that will
suffice. I assume you have conduit=false on the network connectors.
w.r.t your patch, I don't see any check on exclusiveSub, i must be missing
something.
Also note, the ConditionalNetworkForwardingBridgeFactory is configurable via
policy so you can plugin in your own implementation.
> Exclusive consumer may stop consuming in broker network
> -------------------------------------------------------
>
> Key: AMQ-6456
> URL: https://issues.apache.org/jira/browse/AMQ-6456
> Project: ActiveMQ
> Issue Type: Bug
> Components: Broker
> Affects Versions: 5.9.1, 5.14.1
> Reporter: james
> Priority: Critical
> Attachments: exclusive_consumer_patch.txt
>
>
> When exclusive consumers are restarted in a network of brokers, the "chosen"
> consumer may shift from one broker to the next. In order for existing
> messages to be consumed, they must be forwarded from the broker on which they
> currently exist to the broker on which the chosen consumer now resides.
> However, the ConditionalNetworkBridgeFilter incorrectly decides that it
> should not forward the messages and they end up getting stuck on the old
> broker.
> We found the issue in 5.9.1, but the relevant code looks unchanged in the
> current 5.x release.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)