You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Claus Ibsen (Jira)" <ji...@apache.org> on 2024/08/19 07:42:00 UTC
[jira] [Updated] (CAMEL-20844) UseOriginalAggregationStrategy doesn't set EXCEPTION_CAUGHT property on exception propagation
[ https://issues.apache.org/jira/browse/CAMEL-20844?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen updated CAMEL-20844:
--------------------------------
Fix Version/s: 4.8.0
> UseOriginalAggregationStrategy doesn't set EXCEPTION_CAUGHT property on exception propagation
> ---------------------------------------------------------------------------------------------
>
> Key: CAMEL-20844
> URL: https://issues.apache.org/jira/browse/CAMEL-20844
> Project: Camel
> Issue Type: Bug
> Components: camel-core
> Affects Versions: 4.4.0
> Reporter: Eduard Gomoliako
> Assignee: Claus Ibsen
> Priority: Minor
> Fix For: 4.8.0
>
>
> I have the following problem: {{onCompletion}} processor on a route can’t find a caught exception in Exchange that occurred inside {{Split}} with {{UseOriginalAggregationStrategy}} aggregation strategy.
>
> Long story short:
> * {{Split}} processor got only one message from the split expression
> * Sending it down to the next processor failed because of exception
> * {{RedeliveryErrorHandler}} sets {{EXCEPTION_CAUGHT}} property on the exchange ({{{}prepareExchangeAfterFailure{}}} method)
> * On Aggregation: {color:#000000}{{UseOriginalAggregationStrategy}} {{aggregate}} method took the exception and set it to the original exchange (didn’t copy the {color}{{EXCEPTION_CAUGHT}} property though)
> * The {color:#000000}{{OnCompletionProcessor}} in the {{doProcess}} method clears the exception sending it down to the {{onCompletion}} processors{color}
> * {color:#000000}Exchange in the {{onCompletion}} processor doesn’t have an exception and has no {color}{{EXCEPTION_CAUGHT}} property.
>
> {color:#000000}Is this an expected behavior?{color}
> {color:#000000}Should the {color}{{UseOriginalAggregationStrategy}} copy the {{EXCEPTION_CAUGHT}} property as well?
> Or probably it would be better if {color:#000000}{{OnCompletionProcessor}} sets it in case of clearing the exception, wouldn’t it?{color}
> {color:#000000} {color}
> {color:#000000}Thank you in advance for sharing your thoughts.{color}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)