camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Willem Jiang (JIRA)" <>
Subject [jira] Commented: (CAMEL-2537) Batch Resequencer issues with JMSPriority
Date Thu, 11 Mar 2010 02:35:44 GMT


Willem Jiang commented on CAMEL-2537:

Do you use camel resequencer to do this job? If so can you show us with your test case.
In this way, we can dig the issue more easily.

> Batch Resequencer issues with JMSPriority
> -----------------------------------------
>                 Key: CAMEL-2537
>                 URL:
>             Project: Apache Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 2.0.0
>            Reporter: Jeff Sprankle
> My project uses ActiveMQ and we have a requirement to support priority queues for one
or more of our configured queues.  One of the suggestions under the ActiveMQ FAQ is to use
a Resequencer, so I followed the link and applied the <resequence> element to my XML-based
route.  While testing this functionality we uncovered a couple issues that seem like they
should be addressed in a future release of camel-core.
> # The JMSPriority header is not a unique field and internally the Resequencer class uses
java.util.Set to collect messages into a batch.  This means that a given batch cannot contain
multiple messages with the same JMSPriority.  For example, if I use the default batch config
and submit five messages with JMSPriority=6 to the queue within a second, only one of those
message is delivered to the configured endpoint.
> # According to the JMS API, priority has ten values where 0 is the lowest and 9 is the
highest.  This means that messages with higher priorities should be processed before messages
with lower priorities.  When I configure my resequencer with <header>JMSPriority</header>,
however, it by default orders the messages within the batch in ascending order which means
that messages with lower priorities are processed first.
> If there are any known workarounds to these issues please document them, because the
current Resequencer documentation that uses JMSPriority as an example is misleading.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message