Are you using transacted ack mode with the broker? And what broker do
you use? If you use AMQ then it will by default do redelivery in
sequence on the consumer.

I think there is an option to turn async behavior on, but can't easily
find it in the docs, but there is a JIRA about that.

Also mind that with AMQ prefect size matter, its 1000 by default.

On Tue, Oct 8, 2013 at 4:49 AM, berhack <[email protected]> wrote:
> Hi all,
>
> Does anyone know how to properly implement redelivery that does not block
> normal processing of other messages?
>
> I have an error handler defined with DLQ, but once that kicks in, no
> messages will be consumed.
>
> I know about asyncConsumer, I set it on the JmsConfiguration but to no
> avail.  Once it starts the retry/redelivery, nothing else is coming through!
>
> I only got this to work if you up the concurrent consumers to say, 2, but
> that's not what I'm looking for, since then it just delays the inevitable by
> increasing the failure capacity to 2, then it will block again.
>
> As an experiment, I set both options (asyncConsumer=true,
> maxConcurrentConsumers=2) and got unexpected results - my problem message
> was being processed twice...
>
> I notice that during redelivery, the problem message is not dequeued, and
> maybe that is the problem.  Even if asyncConsumer = true, it keeps retrying
> the same message over and over?  If that is the case, how do you get the JMS
> consumer to dequeue during retry?
>
> Any input would be appreciated.
>
>
>
> --
> View this message in context: 
> http://camel.465427.n5.nabble.com/Camel-JMS-redelivery-blocks-normal-processing-tp5741069.html
> Sent from the Camel - Users mailing list archive at Nabble.com.



-- 
Claus Ibsen
-----------------
Red Hat, Inc.
Email: [email protected]
Twitter: davsclaus
Blog: http://davsclaus.com
Author of Camel in Action: http://www.manning.com/ibsen

Reply via email to