Details
Description
I have written a test case which will demonstrate the difference between the following two scenarios:
1. Producer sending dissimilar JMSType messages to a queue, with a client consuming all messages (no selector).
2. Producer sending dissimilar JMSType messages to a queue, with a client consuming every other message (using selector).
With a large enough size of test messages (for my environment about 5k), scenario 2 will fail with delivery to the consumer halted, while scenario 1 will not.
Test Output:
waiting for consumer to pause ... consumer: 0, producer: 0
waiting for consumer to pause ... consumer: 200, producer: 5000
waiting for consumer to pause ... consumer: 200, producer: 5000
waiting for consumer to pause ... consumer: 200, producer: 5000
waiting for consumer to pause ... consumer: 200, producer: 5000
waiting for consumer to pause ... consumer: 200, producer: 5000