[
https://issues.apache.org/jira/browse/CAMEL-16566?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claus Ibsen resolved CAMEL-16566.
---------------------------------
Resolution: Fixed
> camel-core - Nested enrich with shareUnitOfWork=true result in
> ConcurrentModificationException
> ----------------------------------------------------------------------------------------------
>
> Key: CAMEL-16566
> URL: https://issues.apache.org/jira/browse/CAMEL-16566
> Project: Camel
> Issue Type: Bug
> Components: camel-core
> Affects Versions: 3.7.3
> Reporter: Jens Kleine-Herzbruch
> Assignee: Claus Ibsen
> Priority: Major
> Fix For: 3.7.5, 3.10.0
>
>
> If you have routes that have nested enrichers that use shareUnitOfWork=true,
> you'll get a ConcurrentModificationException when the subroutes are joined
> back.
>
> {code:java}
> from("direct:routeA").
> enrichWith("direct:routeB", true, true).body((a, b) -> a);
> from("direct:routeB").
> enrichWith("direct:routeC", true, true).body((a, b) -> a);
> from("direct:routeC").setBody(constant("xxx")); {code}
>
> {code:java}
> org.apache.camel.CamelExchangeException: Error occurred during aggregation.
> Exchange[0A01B3DD98090F3-0000000000000001]. Caused by:
> [java.util.ConcurrentModificationException - null]
> at org.apache.camel.processor.Enricher$1.done(Enricher.java:247)
> ~[camel-core-processor-3.7.3.jar:3.7.3]
> at org.apache.camel.AsyncCallback.run(AsyncCallback.java:44)
> ~[camel-api-3.7.3.jar:3.7.3]
> ...
> Caused by: java.util.ConcurrentModificationException
> at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:1042) ~[?:?]
> at java.util.ArrayList$Itr.remove(ArrayList.java:1010) ~[?:?]
> at
> org.apache.camel.impl.engine.DefaultUnitOfWork.handoverSynchronization(DefaultUnitOfWork.java:202)
> ~[camel-base-engine-3.7.3.jar:3.7.3]
> at
> org.apache.camel.impl.engine.DefaultUnitOfWork.handoverSynchronization(DefaultUnitOfWork.java:179)
> ~[camel-base-engine-3.7.3.jar:3.7.3]
> at
> org.apache.camel.support.DefaultExchange.handoverCompletions(DefaultExchange.java:612)
> ~[camel-support-3.7.3.jar:3.7.3]
> at org.apache.camel.processor.Enricher$1.done(Enricher.java:242)
> ~[camel-core-processor-3.7.3.jar:3.7.3]
> ... {code}
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)