allthingssecurity commented on PR #29200:
URL: https://github.com/apache/camel/pull/29200#issuecomment-6652186920

   Thanks Claus, done in b872f0051553.
   
   - `MulticastProcessor.doDone` now catches `Throwable` from `onCompletion` 
(`Throwable completionFailure`). `setException` wraps an `Error` in a 
`CamelExecutionException`, and `addSuppressed` takes it as is, so nothing else 
changed.
   - New tests in `MulticastOnCompletionThrowsTest`, with a strategy whose 
`onCompletion` throws `NoClassDefFoundError`: multicast, parallel multicast 
(done from `aggregateCompleted` on a pool thread), transacted multicast and 
recipient list. Each one checks that the exchange fails with the 
`NoClassDefFoundError` as the cause and completes as many exchanges as the 
control route, so it does not hang and continues once. With the previous commit 
(`catch (Exception e)`) these 4 tests time out, which is the hang.
   - Optional item: I added `multicastTransacted` (the 
`MulticastTransactedTask` path with an exception), because it only needed a 
transacted flag on the send.
   
   Tests: `MulticastOnCompletionThrowsTest` 19/19, and 20 runs in one JVM 
380/380. camel-core `Multicast*`, `Split*` and `RecipientList*`: 505 tests, 0 
failures, 0 errors, 4 skipped. The formatter of the build made no changes.
   
   _Claude Code on behalf of allthingssecurity_
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to