[
https://issues.apache.org/activemq/browse/CAMEL-2537?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=59380#action_59380
]
Mark You commented on CAMEL-2537:
---------------------------------
I don't see any change in batch mode description about unique number, but in
stream mode, the wiki says the message should have unique sequence number. I
think original problem is resequencer batch mode should support duplicate
priority number, otherwise we can't use this pattern to do priority queue.
For example:
In common sense, we usually define a limit number of priorities: 1, 2, 3,
4, 5 for example. And we just want to sort them based on priority. So there is
always duplication in priority in this case.
I think the resequencer batch mode should support this case, otherwise it will
be uselesss.
> 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.3.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.