Hi, We have a cluster of 4 brokers (A, B, C, D). The test scenario is for one produce connected to broker A.
1. producer sends msgs to broker A's queue. 2. stop producer. we see pending messages in queue on broker A. 3. consumer connect to broker D. consumer recv msgs. 4. stop consumer. we see remaining/pending msgs in queue on brokers D and A. 5. consumer connect to broker C. consumer recv msgs. 6. stop consumer. we see pending msgs in C and D. pending msgs on A drained to 0. 7. consumer connect to broker C, again. it read all remaining pending msg on C and then waiting for more msgs (but not receiving any more). pending msgs on D still remain pending. 8. stop consumer on C. 9. start consumer on B. no msg received, but msg are pending on broker D. The pattern seem to be the msg forwarding only do one hop and then stuck in that queue/broker. When consumer connected to other brokers, the msgs are not forwarded. Broker version: 5.4.2 Java 1.6 Linux broker advisorySupport="true" <destinationPolicy> <policyMap> <policyEntries> <policyEntry topic=">" producerFlowControl="true" memoryLimit="1mb"> <pendingSubscriberPolicy> <vmCursor /> </pendingSubscriberPolicy> </policyEntry> <policyEntry queue=">" producerFlowControl="true" memoryLimit="1mb"> <!-- Use VM cursor for better latency For more information, see: http://activemq.apache.org/message-cursors.html <pendingQueuePolicy> <vmQueueCursor/> </pendingQueuePolicy> --> </policyEntry> </policyEntries> </policyMap> </destinationPolicy> <networkConnector uri="static:(tcp://host1:61616,tcp://host2:61616,tcp://host3:61616)" conduitSubscriptions="false" networkTTL="40" dynamicOnly="true" suppressDuplicateQueueSubscriptions="false" decreaseNetworkConsumerPriority="false" > </networkConnector> <transportConnector name="openwire" uri="tcp://0.0.0.0:61616" updateClusterClients="true" updateClusterClientsOnRemove="true"/> We use prefetchPolicy of 1 but msgs are still stuck. url=tcp://host1:61616?jms.prefetchPolicy.all=1 This problem seems to affect other settings. We already have one sys in production that showed msgs were stuck and not being re-routed to idle consumers. The app team is considering this a serious issue and want resolution or else we will move off ActiveMQ platform. I'm building another system that showed the same issues. We need to resolve this - else we cannot proceed with ActiveMQ. Your help is really appreciated. Regards