[
https://issues.apache.org/activemq/browse/AMQ-2217?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=61746#action_61746
]
Gary Tully commented on AMQ-2217:
---------------------------------
The pageSize is the amount of messages that are pulled into memory by a
destination prior to a dispatch, it needs to be large enough to bridge the gaps
between messages with sparse selector distribution, otherwise messages of one
type will halt the dispatch till they are consumed or expire. A sensible
message expiry policy can help in tandem here.
> Message delivery to selector based consumers pauses if selector leaves
> messages on the queue.
> ---------------------------------------------------------------------------------------------
>
> Key: AMQ-2217
> URL: https://issues.apache.org/activemq/browse/AMQ-2217
> Project: ActiveMQ
> Issue Type: Bug
> Components: Broker
> Affects Versions: 5.1.0, 5.3.0
> Environment: Windows XP Professional 2002, Service Pack 2, Intel
> Pentium D 3ghz, various 1.5 and 1.6 versions of jdk
> Reporter: Jar Lyons
> Assignee: Gary Tully
> Fix For: 5.4.1
>
> Attachments: DiscriminatingConsumerLoadTest.java
>
>
> 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
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.