[
https://issues.apache.org/jira/browse/CAMEL-25365?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Claus Ibsen resolved CAMEL-25365.
---------------------------------
Resolution: Fixed
Merged in https://github.com/apache/camel/pull/27401 (commit 4fff8d5925ef) for
4.23.0.
_Claude Code on behalf of davsclaus_
> camel-core - a dev mode reload that cuts off in-flight exchanges says where
> they were waiting, and does not log them as unexplained errors
> ------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: CAMEL-25365
> URL: https://issues.apache.org/jira/browse/CAMEL-25365
> Project: Camel
> Issue Type: Improvement
> Components: camel-core
> Reporter: Claus Ibsen
> Assignee: Claus Ibsen
> Priority: Minor
> Fix For: 4.23.0
>
>
> In dev mode a route file is reloaded while messages are in flight. When the
> in-flight exchanges are blocked, for example on a {{direct:}} endpoint whose
> consumer is part of the same edit, the reload waits for the graceful shutdown
> timeout, forces the shutdown, and the interrupted exchanges are logged as
> errors:
> {noformat}INFO DefaultShutdownStrategy : Waiting as there are still 2
> inflight and pending exchanges to complete, timeout in 5 seconds. Inflights
> per route: [picked-lines = 2]
> ... (once per second)
> WARN DefaultShutdownStrategy : Timeout occurred during graceful shutdown.
> Forcing the routes to be shutdown now. ...
> INFO DirectProducer : Interrupted while processing the exchange
> ERROR DefaultErrorHandler : Failed delivery for (...) at picked-lines[log2]
> aggregator.camel.yaml:23. Exhausted after delivery attempt: 1 caught:
> java.util.concurrent.RejectedExecutionException{noformat}
> Nothing in the log says what the exchanges were waiting on, and the ERROR
> with a RejectedExecutionException looks like a bug in the route, while it is
> the reload cutting them off. Found in the local-model benchmark (r5,
> route-aggregator step 1: the model added {{to: direct:shipment}} and the
> aggregator route that consumes it; 3 of 5 runs logged the errors). A person
> editing a route in dev mode meets the same thing.
> Proposals, to be weighed:
> * The shutdown wait message names where the in-flight exchanges are, for
> example the endpoint or processor they are blocked in ("waiting at
> direct:shipment").
> * An exchange that the reload's forced shutdown interrupts is logged as a
> WARN that says so ("interrupted by the route reload"), not as an unexplained
> ERROR with a RejectedExecutionException.
> _Claude Code on behalf of davsclaus_
--
This message was sent by Atlassian Jira
(v8.20.10#820010)