[ 
https://issues.apache.org/jira/browse/AXIS2-5696?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rajan Arora updated AXIS2-5696:
-------------------------------
    Attachment: Axis2 libraries.7z

Axis Libraries which we are using is attached for your reference.

> Axis 2 threads are not closing properly
> ---------------------------------------
>
>                 Key: AXIS2-5696
>                 URL: https://issues.apache.org/jira/browse/AXIS2-5696
>             Project: Axis2
>          Issue Type: Bug
>    Affects Versions: 1.6.2
>         Environment: Operating system: LINUX 
> (uname -r 
> 2.6.32-431.29.2.el6.x86_64)
>            Reporter: Rajan Arora
>         Attachments: Axis2 libraries.7z
>
>
> Hi team,
> We have seen a very large amount of axis 2 threads leaks in our environments. 
> We are using a 
> WebSphere Application Server Network Deployment  8.0.0 on Linux operating 
> system
> We are having application deployed on this Application server which are using 
> Axis 2 library 1.6.2 version. I am attaching the library for your reference. 
> We are seeing AXIS2 Threads are not closing at all and they are consuming 
> memory and finally after few days the application fails due to exhaustion of 
> Native Memory. Most of the Native Memory is being consumed by Axis 2 threads. 
> We did raised this issue with IBM as we are using IBM application server to 
> host our applications. After a detailed analysis of couple of months IBM have 
> confirmed that its not an issue with their product of SDK. They believe its 
> an issue with 
> As per IBM latest comments In our code we are calling the Thread pool 
> shutdown however the threads are not getting terminated at all. Please refer 
> the below comments. 
> Please do let me know if any further details are required.
> ==========================================================
> The trace shows ThreadPool objects are created by this stack:            
>                                                                          
> org.apache.axis2.util.threadpool.ThreadPool.<init> (ThreadPool.java:53)  
> org.apache.axis2.context.ConfigurationContext.getThreadPool              
> (ConfigurationContext.java:648)                                          
> org.apache.axis2.description.OutInAxisOperationClient.executeImpl        
> (OutInAxisOperation.java:232)                                            
> org.apache.axis2.client.OperationClient.execute                          
> (OperationClient.java:165)                                               
> au.com.amp.www.afs.idam.eventnotificationservice_v1.EventNotificationSer
> viceStub.startsendEvent                                                  
> (EventNotificationServiceStub.java:315)                                  
> au.com.amp.isam.eai.util.PredatorClient.sendEvent                        
> (PredatorClient.java:158)                                                
> au.com.amp.isam.eai.util.PredatorClient$$FastClassByCGLIB$$aad7be26.invo
> ke                                                                       
> (<generated>)                                                            
> net.sf.cglib.proxy.MethodProxy.invoke (MethodProxy.java:204)             
> org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.i
> nvokeJoinpoint                                                           
> (Cglib2AopProxy.java:689)                                                
> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed     
> (ReflectiveMethodInvocation.java:150)                                    
> org.springframework.aop.interceptor.AsyncExecutionInterceptor$1.call     
> (AsyncExecutionInterceptor.java:83)                                      
> java.util.concurrent.FutureTask$Sync.innerRun (FutureTask.java:314)      
> java.util.concurrent.FutureTask.run (FutureTask.java:149)                
> java.lang.Thread.run (Thread.java:773)                                   
> /util/concurrent/ThreadPoolExecutor.<init>(IIJLjava/util/concurrent/Time
> Unit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFac
> tory;)V                                                                  
> Bytecode method, This = 17c764838                                        
>                                                                          
> This thread then creates a ThreadPoolExecutor and then a Thread.         
> The ThreadPool shutdown methods were not called.                         
>                                                                          
> ServiceClient.cleanup() is being called by the finalizer for             
> ServiceClient (and also by org.apache.axis2.client.Stub.cleanup() which  
> is called by the finalizer for Stub, which I assume is a superclass of   
> au.com.amp.www.afs.idam.eventnotificationservice_v1.EventNotificationSer
> viceStub;                                                                
> see below). However, this does not seem to lead to the associated        
> ThreadPool being shut down.                                              
>                                                                          
> The dump shows there are:                                                
> 2 org/apache/axis2/client/ServiceClient                                  
> 336 java/lang/Thread                                                     
> 1 org/apache/axis2/util/threadpool/ThreadPool                            
> 294 org/apache/axis2/util/threadpool/ThreadPool$DefaultThreadFactory     
> 301 java.util.concurrent.ThreadPoolExecutor                              
> 294 java/util/concurrent/ThreadPoolExecutor$Worker                       
>                                                                          
> 1 of the ServiceClient objects references the 1 ThreadPool. The          
> ServiceClient is kept alive by                                           
> au.com.amp.www.afs.idam.eventnotificationservice_v1.EventNotificationSer
> viceStub                                                                 
> @ 0x17f560dd8, which is waiting to be finalized.                         
>                                                                          
> SUMMARY:                                                                 
> * Identified the code which creates the ThreadPool objects (and the      
> "Axis2 Task" threads)                                                    
> * Noted that ServiceClient.cleanup() is being called, but doesn't lead   
> to ThreadPools being shut down                                          
> L3 Java J9Core has confirmed same issue from latest set of data and does not 
> involve or point to JDK/SDK code.  Issue should be
> further investigated by owner of Axis2 to help explain why threadpools are 
> not being shutdown properly.                                      
> -------------------------------------------------------------------------------------------



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscr...@axis.apache.org
For additional commands, e-mail: java-dev-h...@axis.apache.org

Reply via email to