allthingssecurity commented on PR #29040: URL: https://github.com/apache/camel/pull/29040#issuecomment-6598569271
Thanks, done in b98e677e0000, after merging main in (no conflicts with #28808). 1. `deliver()` catches `Throwable` now, and `takeOverFailedDelivery` takes a `Throwable`. I aligned `redeliver()` as well (`Throwable`, precise rethrow). New test `errorThrownOnEveryAttempt` throws `NoClassDefFoundError` on the first delivery and on the redelivery. With the previous `deliver()` it times out after 10 seconds, and it also times out when only `redeliver()` catches the narrower type. The other 19 tests pass in both cases. 2. `RedeliveryFirstDeliveryProcessorThrowsTestSupport` extends `SimpleTaskProcessorThrowsTestSupport` and overrides `start(Processor)` with a route that has an `onException`, so the step runs on the redelivery task. It inherits the late callback with the next exchange and the double callback, and adds the callback before the throw. The pooled class runs only those 3. The stress test sends 50 exchanges. 3. The takeover WARN includes the exchange id, read in the catch while the exchange is still ours. The 6 throws test classes (these two, `SimpleTask*` and `RedeliveryProcessorThrows*`) ran 20 times in one JVM: 1300 tests, 0 failures. `processor.errorhandler.**` plus the error handler, redelivery and dead letter tests: 254, 0 failures. _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]
