[ https://issues.apache.org/activemq/browse/CAMEL-2537?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen resolved CAMEL-2537. -------------------------------- Resolution: Fixed Updated wiki pages with details about how to use the resequencer for re-ordering jmspriority messages See also this unit test http://svn.apache.org/viewvc?rev=952085&view=rev > Batch Resequencer issues with JMSPriority > ----------------------------------------- > > Key: CAMEL-2537 > URL: https://issues.apache.org/activemq/browse/CAMEL-2537 > Project: Apache Camel > Issue Type: Improvement > Components: camel-core > Affects Versions: 2.0.0 > Reporter: Jeff Sprankle > Assignee: Claus Ibsen > Fix For: 2.4.0 > > > 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.