You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Benjamin Graf (Jira)" <ji...@apache.org> on 2022/01/17 13:16:00 UTC

[jira] [Created] (CAMEL-17504) BridgeExceptionHandlerToErrorHandler broken with DefaultErrorHandler

Benjamin Graf created CAMEL-17504:
-------------------------------------

             Summary: BridgeExceptionHandlerToErrorHandler broken with DefaultErrorHandler
                 Key: CAMEL-17504
                 URL: https://issues.apache.org/jira/browse/CAMEL-17504
             Project: Camel
          Issue Type: Bug
          Components: came-core
    Affects Versions: 3.14.0
            Reporter: Benjamin Graf


Using BridgeExceptionHandlerToErrorHandler marks new Exchange as delivery exhausted
{code:java}
exchange.adapt(ExtendedExchange.class).setRedeliveryExhausted(true);
{code}
[Link to Code|https://github.com/apache/camel/blob/80b92e3624ae5db59a1a24a441f1b10b39eaa1a5/core/camel-support/src/main/java/org/apache/camel/support/BridgeExceptionHandlerToErrorHandler.java#L70]

but SimpleTask in RedeliveryErrorHandler must be not exhausted.
{code:java}
boolean failure = exchange.getException() != null
    && !ExchangeHelper.isFailureHandled(exchange)
    && !exchange.isRedeliveryExhausted();

if (failure) {
    // previous processing cause an exception
    handleException();
    onExceptionOccurred();
    prepareExchangeAfterFailure(exchange);
    // we do not support redelivery so continue callback
    AsyncCallback cb = callback;
    taskFactory.release(this);
    reactiveExecutor.schedule(cb);
}
{code}
[Link to Code|https://github.com/apache/camel/blob/d8999df46f5b0c4500b4a33c743a1527cd1d5cd0/core/camel-core-processor/src/main/java/org/apache/camel/processor/errorhandler/RedeliveryErrorHandler.java#L453]

Seems to be broken somewhere after 3.7.x



--
This message was sent by Atlassian Jira
(v8.20.1#820001)