Details
-
Bug
-
Status: Closed
-
Blocker
-
Resolution: Fixed
-
5.15.2
-
None
-
None
Description
Network broker cannot forward the messages back to the broker from which the message came.
Steps to re-produce this problem
create two brokers A and B with mesh network connection and replayWhenNoConsumers="true" (shown in Configuration snippet below )
1. Send a number of messages (e.g. 100) to a queue in broker A
2. create a consumer connecting to Broker B to consume a message from the queue, 100
message were successfully forwarded from broker A to broker B and one
message was consumed by the consumer, there were 99 pending messages left in
the queue in broker B
3. Create another new consumer connected to broker A queue to receive message, but
no messages were forward from broker B back to broker A, as a result, the
consumer times out and no message was delivered from broker A. connect to queue in B
can consume message normally
Configuration snippet
Broker A configuration
------------------------------------------
<policyEntry queue=">" >
.....
<networkBridgeFilterFactory>
<conditionalNetworkBridgeFilterFactory replayWhenNoConsumers="true"/>
</networkBridgeFilterFactory>
....
</policyEntry>
...
<networkConnectors>
...
<networkConnector name="bridgeToB"
uri="static:(tcp://brokerB-host:61616)"
networkTTL="2"
decreaseNetworkConsumerPriority="true"
suppressDuplicateQueueSubscriptions="true" />
...
</networkConnectors>
------------------------------------------
------------------------------------------
Broker B configuration
------------------------------------------
.....
<networkBridgeFilterFactory>
<conditionalNetworkBridgeFilterFactory replayWhenNoConsumers="true"/>
</networkBridgeFilterFactory>
....
</policyEntry>
...
<networkConnectors>
...
<networkConnector name="bridgeToA"
uri="static:(tcp://brokerA-host:61616)"
networkTTL="2"
decreaseNetworkConsumerPriority="true"
suppressDuplicateQueueSubscriptions="true" />
...
</networkConnectors>