You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@camel.apache.org by tkvarenes <tk...@hotmail.com> on 2014/01/06 13:07:38 UTC

StackTraceElement using heap.

Hi.

I have an application using Camel that seems to over time builds up heap
space until it starts using 100%CPU time on a windows server.
The problem occures when there is a connection exception in an outbound
endpoint. I have a retry each second, and when this continues for several
days, the heap is building up.

Doing a heap dump shows me that there is a lot of StackTraceElements. This
is, I guess, from the stack trace from every time the connection failed, but
it seems like something is holding the reference to the stacktrace elements
after the exception has been handled.

Could there be something with the deafult error hanlder? 

I am using logback and the application is running in Tomcat.


Here is the route configuration:

from("jms:CRM.MO?acknowledgementModeName=CLIENT_ACKNOWLEDGE")
			.id("CRM-MO-Receive ( < CRM.MO )")
		
.errorHandler(defaultErrorHandler().maximumRedeliveries(-1).redeliveryDelay(1000))
		    	.handleFault().transacted("jmsTransactionPolicy")
			.setProperty("OriginalInBody", body())
			.process(aMessageTranslator)
			.process(aCorrelationEnricher)
			.removeHeaders("JMS*")
		
.throttle(configuration.getThrottle().getMessagesPerPeriod()).timePeriodMillis(configuration.getThrottle().getTimePeriodMillis())
			.inOut("cxf:bean:receiveEndpoint?defaultOperationName=ReceiveMessage")
			.process(receiveResponseTranslator)			
			.end();

I'm not sure if the problem really is Camel but I have never experienced
something like it before.

Regards 

Trond




--
View this message in context: http://camel.465427.n5.nabble.com/StackTraceElement-using-heap-tp5745623.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Re: StackTraceElement using heap.

Posted by tkvarenes <tk...@hotmail.com>.
...update


If we stop sending messages through the cxf endpoint, the heap growth is
stopped, but it never decreases tp the "normal" level again, leaving a lot
of StackTraceElement instances left in the heap.
Funny thing is that when we do a heapdump from jvisualvm the garbage
collection removes  the  StackTraceElement instances and the heap is back to
normal.
Is there a difference between the normal GC and the GC that is done when a
heapdump is made? I guess when making a heapdump, one will ensure that only
the instances that are really still into play are shown, so it might be more
agressive in any way?

But still, there must be something referencing the StackTraceElement /
StackTraceelement[] long after the stack trace has happend.

We are running a test now, where we are letting the endpoint decribed ealier
connect, but responding with a message that fails in the response decoder,
to see if we see the same problem. If not there must be something with
regards to cxf I guess.

/Trond



--
View this message in context: http://camel.465427.n5.nabble.com/StackTraceElement-using-heap-tp5745623p5745726.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Re: StackTraceElement using heap.

Posted by tkvarenes <tk...@hotmail.com>.
Hi.

doing a heap dump with 20 minutes time between shows me that instances of
these classes are increasing:
org.apache.cxf.common.i18n.Message
org.apache.cxf.interceptor.Fault
org.apache.cxf.jaxws.context.WrappedMessageContext


The other classes that are increasing are mainly standard java classes.

Is it possible in the heap dump to see what is referencing an instance?


/Trond



--
View this message in context: http://camel.465427.n5.nabble.com/StackTraceElement-using-heap-tp5745623p5745663.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Re: StackTraceElement using heap.

Posted by Claus Ibsen <cl...@gmail.com>.
On Mon, Jan 6, 2014 at 4:11 PM, tkvarenes <tk...@hotmail.com> wrote:
> Hi,
>
> I use camel 2.11.1
>
> It's not that the stack traces elements are any longer than usual, but I
> would expect them not to be referenced any more so the GC could remove them,
> but to me it seems like something is still holding a refence to them since
> they show up on the heap dump.
>

Yeah must be something else holding a reference to something that
likely could have been applicable for GC.
Can you dive into a heap dump to see "what is being held in memory" ?



> I get a lot of these stack traces because I have a reconnection every
> second, so there is a new stack trace shown in the log every other second.
>
>
> Don't know if it helps, but here is the stack trace:
> 2013-12-18 00:00:00,525 WARN  {Camel (smsGatewayCamelContext) thread #130 -
> JmsConsumer[CRM.DN]} [org.apache.cxf.phase.PhaseInterceptorChain]:
> Interceptor for
> {http://localhost/services/crm/receive}Service#{http://localhost/services/crm/receive}ReceiveDeliveryNotification
> has thrown exception, unwinding now
> org.apache.cxf.interceptor.Fault: Could not send Message.
>         at
> org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:64)
> ~[cxf-api-2.7.5.jar:2.7.5]
>         at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271)
> ~[cxf-api-2.7.5.jar:2.7.5]
>         at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:530)
> ~[cxf-api-2.7.5.jar:2.7.5]
>         at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:456)
> ~[cxf-api-2.7.5.jar:2.7.5]
>         at
> org.apache.camel.component.cxf.CxfProducer.process(CxfProducer.java:112)
> ~[camel-cxf-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:122)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:298)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:117)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:72)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.interceptor.BacklogTracerInterceptor.process(BacklogTracerInterceptor.java:84)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.interceptor.HandleFaultInterceptor.process(HandleFaultInterceptor.java:41)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:391)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:273)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:46)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:335)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:117)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelayProcessorSupport.process(DelayProcessorSupport.java:104)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:72)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.interceptor.BacklogTracerInterceptor.process(BacklogTracerInterceptor.java:84)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.interceptor.HandleFaultInterceptor.process(HandleFaultInterceptor.java:41)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:391)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:273)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:46)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:335)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:117)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:391)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:273)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.spring.spi.TransactionErrorHandler.processByErrorHandler(TransactionErrorHandler.java:223)
> ~[camel-spring-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:98)
> ~[camel-spring-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:111)
> ~[camel-spring-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.interceptor.BacklogTracerInterceptor.process(BacklogTracerInterceptor.java:84)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.interceptor.HandleFaultInterceptor.process(HandleFaultInterceptor.java:41)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:391)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:273)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.spring.spi.TransactionErrorHandler.processByErrorHandler(TransactionErrorHandler.java:223)
> ~[camel-spring-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.spring.spi.TransactionErrorHandler$1.doInTransactionWithoutResult(TransactionErrorHandler.java:180)
> ~[camel-spring-2.11.1.jar:2.11.1]
>         at
> org.springframework.transaction.support.TransactionCallbackWithoutResult.doInTransaction(TransactionCallbackWithoutResult.java:33)
> ~[spring-tx-3.2.3.RELEASE.jar:3.2.3.RELEASE]
>         at
> org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:131)
> ~[spring-tx-3.2.3.RELEASE.jar:3.2.3.RELEASE]
>         at
> org.apache.camel.spring.spi.TransactionErrorHandler.doInTransactionTemplate(TransactionErrorHandler.java:173)
> ~[camel-spring-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.spring.spi.TransactionErrorHandler.processInTransaction(TransactionErrorHandler.java:133)
> ~[camel-spring-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:102)
> ~[camel-spring-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:111)
> ~[camel-spring-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:46)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:335)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:46)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.UnitOfWorkProcessor.processAsync(UnitOfWorkProcessor.java:150)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:117)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.RouteInflightRepositoryProcessor.processNext(RouteInflightRepositoryProcessor.java:48)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:72)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:86)
> ~[camel-core-2.11.1.jar:2.11.1]
>         at
> org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:104)
> ~[camel-jms-2.11.1.jar:2.11.1]
>         at
> org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:562)
> ~[spring-jms-3.2.3.RELEASE.jar:3.2.3.RELEASE]
>         at
> org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:500)
> ~[spring-jms-3.2.3.RELEASE.jar:3.2.3.RELEASE]
>         at
> org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:468)
> ~[spring-jms-3.2.3.RELEASE.jar:3.2.3.RELEASE]
>         at
> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:325)
> ~[spring-jms-3.2.3.RELEASE.jar:3.2.3.RELEASE]
>         at
> org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263)
> ~[spring-jms-3.2.3.RELEASE.jar:3.2.3.RELEASE]
>         at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1096)
> ~[spring-jms-3.2.3.RELEASE.jar:3.2.3.RELEASE]
>         at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1088)
> ~[spring-jms-3.2.3.RELEASE.jar:3.2.3.RELEASE]
>         at
> org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:985)
> ~[spring-jms-3.2.3.RELEASE.jar:3.2.3.RELEASE]
>         at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> ~[na:1.7.0_25]
>         at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> ~[na:1.7.0_25]
>         at java.lang.Thread.run(Thread.java:724) ~[na:1.7.0_25]
> Caused by: java.net.ConnectException: ConnectException invoking
> http://localhost:9090/mockServices/receive: Connection refused: connect
>         at sun.reflect.GeneratedConstructorAccessor74.newInstance(Unknown
> Source) ~[na:na]
>         at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> ~[na:1.7.0_25]
>         at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
> ~[na:1.7.0_25]
>         at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.mapException(HTTPConduit.java:1338)
> ~[cxf-rt-transports-http-2.7.5.jar:2.7.5]
>         at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1322)
> ~[cxf-rt-transports-http-2.7.5.jar:2.7.5]
>         at
> org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
> ~[cxf-api-2.7.5.jar:2.7.5]
>         at
> org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:622)
> ~[cxf-rt-transports-http-2.7.5.jar:2.7.5]
>         at
> org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
> ~[cxf-api-2.7.5.jar:2.7.5]
>         ... 141 common frames omitted
> Caused by: java.net.ConnectException: Connection refused: connect
>         at java.net.TwoStacksPlainSocketImpl.socketConnect(Native Method)
> ~[na:1.7.0_25]
>         at
> java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
> ~[na:1.7.0_25]
>         at
> java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
> ~[na:1.7.0_25]
>         at
> java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
> ~[na:1.7.0_25]
>         at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
> ~[na:1.7.0_25]
>         at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
> ~[na:1.7.0_25]
>         at java.net.Socket.connect(Socket.java:579) ~[na:1.7.0_25]
>         at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
> ~[na:1.7.0_25]
>         at sun.net.www.http.HttpClient.openServer(HttpClient.java:378)
> ~[na:1.7.0_25]
>         at sun.net.www.http.HttpClient.openServer(HttpClient.java:473)
> ~[na:1.7.0_25]
>         at sun.net.www.http.HttpClient.<init>(HttpClient.java:203)
> ~[na:1.7.0_25]
>         at sun.net.www.http.HttpClient.New(HttpClient.java:290)
> ~[na:1.7.0_25]
>         at sun.net.www.http.HttpClient.New(HttpClient.java:306)
> ~[na:1.7.0_25]
>         at
> sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:995)
> ~[na:1.7.0_25]
>         at
> sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:931)
> ~[na:1.7.0_25]
>         at
> sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:849)
> ~[na:1.7.0_25]
>         at
> sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1090)
> ~[na:1.7.0_25]
>         at
> org.apache.cxf.transport.http.URLConnectionHTTPConduit$URLConnectionWrappedOutputStream.setupWrappedStream(URLConnectionHTTPConduit.java:168)
> ~[cxf-rt-transports-http-2.7.5.jar:2.7.5]
>         at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleHeadersTrustCaching(HTTPConduit.java:1282)
> ~[cxf-rt-transports-http-2.7.5.jar:2.7.5]
>         at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.onFirstWrite(HTTPConduit.java:1233)
> ~[cxf-rt-transports-http-2.7.5.jar:2.7.5]
>         at
> org.apache.cxf.transport.http.URLConnectionHTTPConduit$URLConnectionWrappedOutputStream.onFirstWrite(URLConnectionHTTPConduit.java:195)
> ~[cxf-rt-transports-http-2.7.5.jar:2.7.5]
>         at
> org.apache.cxf.io.AbstractWrappedOutputStream.write(AbstractWrappedOutputStream.java:47)
> ~[cxf-api-2.7.5.jar:2.7.5]
>         at
> org.apache.cxf.io.AbstractThresholdOutputStream.write(AbstractThresholdOutputStream.java:69)
> ~[cxf-api-2.7.5.jar:2.7.5]
>         at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1295)
> ~[cxf-rt-transports-http-2.7.5.jar:2.7.5]
>         ... 144 common frames omitted
>
>
>
>
>
> Regards
> Trond
>
>
>
>
>
> --
> View this message in context: http://camel.465427.n5.nabble.com/StackTraceElement-using-heap-tp5745623p5745629.html
> Sent from the Camel - Users mailing list archive at Nabble.com.



-- 
Claus Ibsen
-----------------
Red Hat, Inc.
Email: cibsen@redhat.com
Twitter: davsclaus
Blog: http://davsclaus.com
Author of Camel in Action: http://www.manning.com/ibsen
Make your Camel applications look hawt, try: http://hawt.io

Re: StackTraceElement using heap.

Posted by tkvarenes <tk...@hotmail.com>.
Hi,

I use camel 2.11.1

It's not that the stack traces elements are any longer than usual, but I
would expect them not to be referenced any more so the GC could remove them,
but to me it seems like something is still holding a refence to them since
they show up on the heap dump. 

I get a lot of these stack traces because I have a reconnection every
second, so there is a new stack trace shown in the log every other second.


Don't know if it helps, but here is the stack trace:
2013-12-18 00:00:00,525 WARN  {Camel (smsGatewayCamelContext) thread #130 -
JmsConsumer[CRM.DN]} [org.apache.cxf.phase.PhaseInterceptorChain]:
Interceptor for
{http://localhost/services/crm/receive}Service#{http://localhost/services/crm/receive}ReceiveDeliveryNotification
has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: Could not send Message.
        at
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:64)
~[cxf-api-2.7.5.jar:2.7.5]
        at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271)
~[cxf-api-2.7.5.jar:2.7.5]
        at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:530)
~[cxf-api-2.7.5.jar:2.7.5]
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:456)
~[cxf-api-2.7.5.jar:2.7.5]
        at
org.apache.camel.component.cxf.CxfProducer.process(CxfProducer.java:112)
~[camel-cxf-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:122)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:298)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.SendProcessor.process(SendProcessor.java:117)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:72)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.interceptor.BacklogTracerInterceptor.process(BacklogTracerInterceptor.java:84)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.interceptor.HandleFaultInterceptor.process(HandleFaultInterceptor.java:41)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:391)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:273)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:46)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:335)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:117)
~[camel-core-2.11.1.jar:2.11.1]
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelayProcessorSupport.process(DelayProcessorSupport.java:104)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:72)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
 	at
org.apache.camel.processor.interceptor.BacklogTracerInterceptor.process(BacklogTracerInterceptor.java:84)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.interceptor.HandleFaultInterceptor.process(HandleFaultInterceptor.java:41)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:391)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:273)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:46)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:335)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:117)
~[camel-core-2.11.1.jar:2.11.1]
        at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:391)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:273)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.spring.spi.TransactionErrorHandler.processByErrorHandler(TransactionErrorHandler.java:223)
~[camel-spring-2.11.1.jar:2.11.1]
        at
org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:98)
~[camel-spring-2.11.1.jar:2.11.1]
        at
org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:111)
~[camel-spring-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.interceptor.BacklogTracerInterceptor.process(BacklogTracerInterceptor.java:84)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.interceptor.HandleFaultInterceptor.process(HandleFaultInterceptor.java:41)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:391)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:273)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.spring.spi.TransactionErrorHandler.processByErrorHandler(TransactionErrorHandler.java:223)
~[camel-spring-2.11.1.jar:2.11.1]
        at
org.apache.camel.spring.spi.TransactionErrorHandler$1.doInTransactionWithoutResult(TransactionErrorHandler.java:180)
~[camel-spring-2.11.1.jar:2.11.1]
        at
org.springframework.transaction.support.TransactionCallbackWithoutResult.doInTransaction(TransactionCallbackWithoutResult.java:33)
~[spring-tx-3.2.3.RELEASE.jar:3.2.3.RELEASE]
        at
org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:131)
~[spring-tx-3.2.3.RELEASE.jar:3.2.3.RELEASE]
        at
org.apache.camel.spring.spi.TransactionErrorHandler.doInTransactionTemplate(TransactionErrorHandler.java:173)
~[camel-spring-2.11.1.jar:2.11.1]
        at
org.apache.camel.spring.spi.TransactionErrorHandler.processInTransaction(TransactionErrorHandler.java:133)
~[camel-spring-2.11.1.jar:2.11.1]
        at
org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:102)
~[camel-spring-2.11.1.jar:2.11.1]
        at
org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:111)
~[camel-spring-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:46)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:335)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:46)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.UnitOfWorkProcessor.processAsync(UnitOfWorkProcessor.java:150)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:117)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.RouteInflightRepositoryProcessor.processNext(RouteInflightRepositoryProcessor.java:48)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:72)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:86)
~[camel-core-2.11.1.jar:2.11.1]
        at
org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:104)
~[camel-jms-2.11.1.jar:2.11.1]
        at
org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:562)
~[spring-jms-3.2.3.RELEASE.jar:3.2.3.RELEASE]
        at
org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:500)
~[spring-jms-3.2.3.RELEASE.jar:3.2.3.RELEASE]
        at
org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:468)
~[spring-jms-3.2.3.RELEASE.jar:3.2.3.RELEASE]
        at
org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:325)
~[spring-jms-3.2.3.RELEASE.jar:3.2.3.RELEASE]
        at
org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263)
~[spring-jms-3.2.3.RELEASE.jar:3.2.3.RELEASE]
        at
org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1096)
~[spring-jms-3.2.3.RELEASE.jar:3.2.3.RELEASE]
        at
org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1088)
~[spring-jms-3.2.3.RELEASE.jar:3.2.3.RELEASE]
        at
org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:985)
~[spring-jms-3.2.3.RELEASE.jar:3.2.3.RELEASE]
        at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
~[na:1.7.0_25]
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
~[na:1.7.0_25]
        at java.lang.Thread.run(Thread.java:724) ~[na:1.7.0_25]
Caused by: java.net.ConnectException: ConnectException invoking
http://localhost:9090/mockServices/receive: Connection refused: connect
        at sun.reflect.GeneratedConstructorAccessor74.newInstance(Unknown
Source) ~[na:na]
        at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
~[na:1.7.0_25]
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
~[na:1.7.0_25]
        at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.mapException(HTTPConduit.java:1338)
~[cxf-rt-transports-http-2.7.5.jar:2.7.5]
        at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1322)
~[cxf-rt-transports-http-2.7.5.jar:2.7.5]
        at
org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
~[cxf-api-2.7.5.jar:2.7.5]
        at
org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:622)
~[cxf-rt-transports-http-2.7.5.jar:2.7.5]
        at
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
~[cxf-api-2.7.5.jar:2.7.5]
        ... 141 common frames omitted
Caused by: java.net.ConnectException: Connection refused: connect
        at java.net.TwoStacksPlainSocketImpl.socketConnect(Native Method)
~[na:1.7.0_25]
        at
java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
~[na:1.7.0_25]
        at
java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
~[na:1.7.0_25]
        at
java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
~[na:1.7.0_25]
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
~[na:1.7.0_25]
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
~[na:1.7.0_25]
        at java.net.Socket.connect(Socket.java:579) ~[na:1.7.0_25]
        at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
~[na:1.7.0_25]
        at sun.net.www.http.HttpClient.openServer(HttpClient.java:378)
~[na:1.7.0_25]
        at sun.net.www.http.HttpClient.openServer(HttpClient.java:473)
~[na:1.7.0_25]
        at sun.net.www.http.HttpClient.<init>(HttpClient.java:203)
~[na:1.7.0_25]
        at sun.net.www.http.HttpClient.New(HttpClient.java:290)
~[na:1.7.0_25]
        at sun.net.www.http.HttpClient.New(HttpClient.java:306)
~[na:1.7.0_25]
        at
sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:995)
~[na:1.7.0_25]
        at
sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:931)
~[na:1.7.0_25]
        at
sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:849)
~[na:1.7.0_25]
        at
sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1090)
~[na:1.7.0_25]
        at
org.apache.cxf.transport.http.URLConnectionHTTPConduit$URLConnectionWrappedOutputStream.setupWrappedStream(URLConnectionHTTPConduit.java:168)
~[cxf-rt-transports-http-2.7.5.jar:2.7.5]
        at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleHeadersTrustCaching(HTTPConduit.java:1282)
~[cxf-rt-transports-http-2.7.5.jar:2.7.5]
        at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.onFirstWrite(HTTPConduit.java:1233)
~[cxf-rt-transports-http-2.7.5.jar:2.7.5]
        at
org.apache.cxf.transport.http.URLConnectionHTTPConduit$URLConnectionWrappedOutputStream.onFirstWrite(URLConnectionHTTPConduit.java:195)
~[cxf-rt-transports-http-2.7.5.jar:2.7.5]
        at
org.apache.cxf.io.AbstractWrappedOutputStream.write(AbstractWrappedOutputStream.java:47)
~[cxf-api-2.7.5.jar:2.7.5]
        at
org.apache.cxf.io.AbstractThresholdOutputStream.write(AbstractThresholdOutputStream.java:69)
~[cxf-api-2.7.5.jar:2.7.5]
        at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1295)
~[cxf-rt-transports-http-2.7.5.jar:2.7.5]
        ... 144 common frames omitted





Regards
Trond





--
View this message in context: http://camel.465427.n5.nabble.com/StackTraceElement-using-heap-tp5745623p5745629.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Re: StackTraceElement using heap.

Posted by Claus Ibsen <cl...@gmail.com>.
Hi

What Camel version do you use?

And do you have some more details about those long stacktrace elements?


On Mon, Jan 6, 2014 at 1:07 PM, tkvarenes <tk...@hotmail.com> wrote:
> Hi.
>
> I have an application using Camel that seems to over time builds up heap
> space until it starts using 100%CPU time on a windows server.
> The problem occures when there is a connection exception in an outbound
> endpoint. I have a retry each second, and when this continues for several
> days, the heap is building up.
>
> Doing a heap dump shows me that there is a lot of StackTraceElements. This
> is, I guess, from the stack trace from every time the connection failed, but
> it seems like something is holding the reference to the stacktrace elements
> after the exception has been handled.
>
> Could there be something with the deafult error hanlder?
>
> I am using logback and the application is running in Tomcat.
>
>
> Here is the route configuration:
>
> from("jms:CRM.MO?acknowledgementModeName=CLIENT_ACKNOWLEDGE")
>                         .id("CRM-MO-Receive ( < CRM.MO )")
>
> .errorHandler(defaultErrorHandler().maximumRedeliveries(-1).redeliveryDelay(1000))
>                         .handleFault().transacted("jmsTransactionPolicy")
>                         .setProperty("OriginalInBody", body())
>                         .process(aMessageTranslator)
>                         .process(aCorrelationEnricher)
>                         .removeHeaders("JMS*")
>
> .throttle(configuration.getThrottle().getMessagesPerPeriod()).timePeriodMillis(configuration.getThrottle().getTimePeriodMillis())
>                         .inOut("cxf:bean:receiveEndpoint?defaultOperationName=ReceiveMessage")
>                         .process(receiveResponseTranslator)
>                         .end();
>
> I'm not sure if the problem really is Camel but I have never experienced
> something like it before.
>
> Regards
>
> Trond
>
>
>
>
> --
> View this message in context: http://camel.465427.n5.nabble.com/StackTraceElement-using-heap-tp5745623.html
> Sent from the Camel - Users mailing list archive at Nabble.com.



-- 
Claus Ibsen
-----------------
Red Hat, Inc.
Email: cibsen@redhat.com
Twitter: davsclaus
Blog: http://davsclaus.com
Author of Camel in Action: http://www.manning.com/ibsen
Make your Camel applications look hawt, try: http://hawt.io