Details
-
Bug
-
Status: Resolved
-
Minor
-
Resolution: Cannot Reproduce
-
None
-
None
-
Quarkus 3.18.3, 3.18.4, 3.19.0 in TomEE 8.0.13 on JDK 17 (Termium).
-
Unknown
-
Regression
Description
When an aggregator runs in the same thread as the transacted route (Using org.apache.camel.util.concurrent.SynchronousExecutorService for executorService), the thread hangs after completion (error or not) at camel-base-engine-3.19.0-sources.jar!/org/apache/camel/impl/engine/DefaultAsyncProcessorAwaitManager.java:107
latch.await();
If I run latch.countDown() in a debugger, the thread continues just fine.
For the success case I found the workaround to set jtaTransactionErrorHandler()for the route containing the aggregator. Still in case of an exception thrown from the code processing the aggregated messages, the thread hangs.
See https://camel.zulipchat.com/#narrow/stream/257298-camel/topic/Deadlock.20in.20transacted.20route.2E.20is.20this.20a.20bug.3F for the discussion on this.