Hi Christian, I think that your initial example of the recursion is a simpler example for the unit test, so with that and a minor reformat of the source code I've committed this to my GitHub fork:
https://github.com/zregvart/camel/commit/d76f75ea46b55b16af9e0ae05bfbb3df271545bd have a look, thanks :) zoran On Fri, May 5, 2017 at 5:43 PM, Christian Schneider <ch...@die-schneider.net> wrote: > I have pushed a test and a possible fix to > https://github.com/apache/camel/tree/CAMEL-11229 > > As the code around error handling is pretty difficult to understand I am not > sure if my solution is good. I would be happy if someone could review my > change. > > Christian > > > On 04.05.2017 17:30, Christian Schneider wrote: >> >> I have the routes below. When I send a message to direct:test I get an >> infinite recursion of exceptions. >> The reason is that the onException handler also seems to be called for the >> direct:handle_er that is called when handling the >> first exception. In case such a handler route also throws an exception the >> recursion happens. >> >> Is this expected or a bug? >> If it is not a bug what do we recommend our users to avoid the recursion? >> >> onException(Throwable.class) >> .to("direct:handle_er"); >> >> from("direct:test") >> .throwException(new RuntimeException()) >> .to("log:test2"); >> >> from("direct:handle_er") >> .throwException(new RuntimeException()); >> >> See also https://issues.apache.org/jira/browse/CAMEL-11229 >> >> Christian >> > > > -- > Christian Schneider > http://www.liquid-reality.de > > Open Source Architect > http://www.talend.com > -- Zoran Regvart