Hello i am trying to stop the route when the application detects that there is no database connection. First in camelContect
<onException> <exception>org.springframework.jdbc.CannotGetJdbcConnectionException</exception> <to uri="direct:stopRoute" /> </onException> <route id="stopRoute" routePolicyRef="StopRoutePolicy"> <from uri="direct:stopRoute" /> <log message="${id}: Database connection lost, message has been stopped" loggingLevel="DEBUG" /> <stop /> </route> Inside my stopRoutePolicy bean: public void onExchangeBegin(Route route, Exchange exchange) { CamelContext context = exchange.getContext(); String routeId = exchange.getFromRouteId(); if (context.getRouteStatus(routeId) != null && context.getRouteStatus(routeId).isStarted()) { try { exchange.getContext().getInflightRepository().remove(exchange); LOG.info("Stopping route: {}", routeId); context.stopRoute(routeId); } catch (Exception exception) { getExceptionHandler().handleException(exception); } } } and i am getting this log messages Exchange[ID-FC8BG42-49403-1474282224072-1-7] 19 Sep 2016 11:52:34 StopRoutePolicyDatabase INFO Stopping route: routeId 19 Sep 2016 11:52:34 DefaultShutdownStrategy INFO Starting to graceful shutdown 1 routes (timeout 10 seconds) 19 Sep 2016 11:52:34 [ext) thread #19 - ShutdownTask DefaultShutdownStrategy INFO Waiting as there are still 1 inflight and pending exchanges to comple te, timeout in 10 seconds. Inflights per route: routeId = 1 19 Sep 2016 11:52:35 [ext) thread #19 - ShutdownTask DefaultShutdownStrategy INFO Waiting as there are still 1 inflight and pending exchanges to comple te, timeout in 9 seconds. Inflights per route: routeId = 1 ... 19 Sep 2016 11:52:44 DefaultShutdownStrategy WARN Timeout occurred during graceful shutdown. Forcing the routes to be s hutdown now. Notice: some resources may still be running as graceful shutdown di d not complete successfully. 19 Sep 2016 11:52:44 [ext) thread #19 - ShutdownTask] DefaultShutdownStrategy WARN Interrupted while waiting during graceful shutdown, will force shutdo wn now. 19 Sep 2016 11:52:44 [ext) thread #19 - ShutdownTask] DefaultShutdownStrategy INFO Route: routeId shutdown complete, was consuming from: En dpoint My question is as i use : exchange.getContext().getInflightRepository().remove(exchange); Still when i am trying to stop the route why am i getting messages that there is inflight and pending exchanges to complete? How can i avoid this situation? Also when i use context.getShutdownStrategy().setTimeout(30); it does not seems to change the timeout. -- View this message in context: http://camel.465427.n5.nabble.com/Database-route-shutdown-tp5787725.html Sent from the Camel - Users mailing list archive at Nabble.com.