Hello, In my test app I'm starting, stopping and removing many SQL routes (about 100 every two minutes). I'm spawning manually only four of these - rest are created in queue (every finished route start next one). Now it looks similar to this:
route.process(new Processor() { Thread stop; @Override public void process(final Exchange exchange) throws Exception { if(stop==null){ stop = new Thread(){ @Override public void run() { try{ camelCtx.stopRoute(exchange.getFromRouteId()); camelCtx.removeRoute(exchange.getFromRouteId()); if(needToAddNextRoute) camelCtx.addRoutes(createNextRoute(exchange)); }catch(final Exception e){ log.debug("Cannot stop route"); } } }; } stop.start(); } }); Yes, it's taken from this tutorial: http://camel.apache.org/how-can-i-stop-a-route-from-a-route.html The problem is that after 30-40 minutes it runs out of memory (250mb). Heap dump shows that 90% of memory is occupied by instance of org.apache.camel.processor.interceptor.BacklogTracer but... it is not set anywhere in my app. Due to this doc http://camel.apache.org/backlogtracer.html it should be disabled by default. Do you have any clues what can produce this bug? M. -- View this message in context: http://camel.465427.n5.nabble.com/BacklogTracer-memory-leak-tp5744561.html Sent from the Camel - Users mailing list archive at Nabble.com.