camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Claus Ibsen <>
Subject Re: DefaultShutdownStrategy can't shutdown DefaultErrorHandler's retries?
Date Tue, 23 Nov 2010 10:55:17 GMT
On Tue, Nov 23, 2010 at 2:42 AM, Lorrin Nelson
<> wrote:
> The interaction between DefaultErrorHandler retries and DefaultShutdownStrategy seems
broken. What I want:
>        * long running infrequent retries. This seems like what DefaultErrorHandler
is built for, thanks to it's exponential back-off feature
>        * shutdown as soon as no retry is in-flight
> Instead, I get:
>        * DefaultShutdownStrategy wants to wait until all future retries have been
attempted! I've configured this to be days! But at least there's a timeout on the DefaultShutdownStrategy,
so after a while of waiting around (while no retries are actually occurring), it proceeds.
>        * DefaultShutdownStrategry logs "Timeout occurred. Now forcing the routes
to be shutdown now.", but actually does nothing.  The route keeps retrying and Tomcat still
can't shutdown.
> Is this broken or have I misconfigured somehow?

This is the intended behavior. Its generally not a good idea to have
redelivery lasting for days. The exchange then has to be stored in
memory until it has to do redelivery the next day. Its generally
better to try for a limited period, and then fail if still a problem.

We could introduce some option to instruct the error handler to stop
attempt redeliveries if a shutdown has been commenced and then
indicate those exchanges failed by setting an exception on that.

Fell free to create a JIRA for such an enhancement.

> -Lorrin

Claus Ibsen
Twitter: davsclaus
Author of Camel in Action:

View raw message