camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Willem Jiang <willem.ji...@gmail.com>
Subject Re: Possible bug with multicast shareUnitOfWork
Date Tue, 08 Jul 2014 03:30:51 GMT
Here are the answers for you questions.
Q1. The default camel thread pool is using CachedThreadPool which means it doesn’t set
up the thread size. 


Q2 If the calling thread is blocked, it still there, thread pool doesn’t reuse it.
That could explain why you got the OOM error. 

If you setup the max size of thread pool, you may face the reject execution issue, as the
thread in the thread pool may all blocked.

My suggestion you should add a timeout for the sync invocation, to avoid blocking the working
thread forever.


--  
Willem Jiang

Red Hat, Inc.
Web: http://www.redhat.com
Blog: http://willemjiang.blogspot.com (English)
http://jnn.iteye.com (Chinese)
Twitter: willemjiang  
Weibo: 姜宁willem



On July 7, 2014 at 11:30:05 PM, rubancsp (rubancse@gmail.com) wrote:
> Corrected typo error
>  
> Hi Willem
>  
> We are getting the OOM memory error in our production environment due to the
> lot of stuck threads.
> while analyzed the code we found that one of the camel route which is using
> the mulitcast is the reason for the stuck thread.This is intermittent issue
> .
>  
>  
> Please find the below code snippet which we used for multi casting.(making
> the two parallel web service call)
>  
> Camel version:2.10.3
>  
> > loggingLevel="DEBUG">
> > parallelProcessing="true">
>  
>  
>  
>  
>  
>  
>  
> Please find the below two logs:
>  
> Logs which is causing the stuck thread:
> 30 Jun 2014 15:10:42,823 ********** [] [14.01] ERROR [Camel (camel-1) thread
> #7 - Multicast] invokeCentury - inside century route
>  
> Log which is working fine:
>  
> 30 Jun 2014 15:10:58,105 *************** [] [14.01] ERROR [Camel (camel-1)
> thread #2 - Multicast] invokeCentury - inside century route
> 30 Jun 2014 15:10:58,105 ************** [14.01] ERROR [Camel (camel-1)
> thread #5 - Multicast] invokeWBServices - inside wb route
>  
>  
> Here is my questions: 1)we are using the default camel thread pool for the
> making the two synchronous calls and not customizing the default thread
> pool.do we need to make any change in the above code to customize the thread
> pool setting(like min pool size max.pool size etc).
> 2) what will happen to worked thread if we did n't get any response from
> the external system . Thread pool terminate the worked thread or we need to
> handle it in our code.
>  
> It would be great if you provide some suggestion on the above issue.
>  
> Please let me know if you need any additional details.
>  
> Thanks
>  
>  
>  
>  
>  
> --
> View this message in context: http://camel.465427.n5.nabble.com/Possible-bug-with-multicast-shareUnitOfWork-tp5726103p5753468.html
 
> Sent from the Camel - Users mailing list archive at Nabble.com.
>  


Mime
View raw message