Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
5.3.0
-
None
-
None
-
Running with the following config:
<destinationPolicy>
<policyMap>
<policyEntries>
<policyEntry topic=">" producerFlowControl="true" memoryLimit="1mb">
<pendingSubscriberPolicy>
<vmCursor/>
</pendingSubscriberPolicy>
</policyEntry>
<policyEntry queue=">" producerFlowControl="true" memoryLimit="1mb"/>
</policyEntries>
</policyMap>
</destinationPolicy>Running with the following config: <destinationPolicy> <policyMap> <policyEntries> <policyEntry topic=">" producerFlowControl="true" memoryLimit="1mb"> <pendingSubscriberPolicy> <vmCursor/> </pendingSubscriberPolicy> </policyEntry> <policyEntry queue=">" producerFlowControl="true" memoryLimit="1mb"/> </policyEntries> </policyMap> </destinationPolicy>
Description
While running performance tests I I was seeing hangs in several tests involving dups ok queue receivers. My suspicion is that this is related to "too lazy" dups_ok acknowledgements. Changing the queue prefetchLimit to 100 caused this problem to go away. This needs more investigation, but it seems like we can get ourselves in to trouble if the queue size is smaller than the receiver's prefetchLimit, and this should be avoid. It is also possible that there is something more complicated happening in my tests. I haven't yet been able to reproduce this outside my performance test environment.