Petals SE JSR181

All the resources are not properly released

Details

  • Type: Bug Bug
  • Status: Resolved Resolved
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: 1.1.3
  • Fix Version/s: 1.5.0
  • Component/s: None
  • Security Level: Public
  • Description:
    Hide

    All the resources are not properly released when uninstalling the component.

    java 9543 noddoux DEL REG 8,1 22995 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/axis2-kernel-1.5.jar
    java 9543 noddoux DEL REG 8,1 22990 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/jaxb-impl-2.1.7.jar
    java 9543 noddoux DEL REG 8,1 23051 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/easywsdl-wsdl-2.3.jar
    java 9543 noddoux DEL REG 8,1 23060 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/petals-cdk-jbidescriptor-2.1.jar
    java 9543 noddoux DEL REG 8,1 22996 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/petals-cdk-core-5.1.jar
    java 9543 noddoux DEL REG 8,1 23055 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/easywsdl-schema-2.3.jar
    java 9543 noddoux 340r REG 8,1 286446 23055 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/easywsdl-schema-2.3.jar (deleted)
    java 9543 noddoux 390r REG 8,1 257121 22996 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/petals-cdk-core-5.1.jar (deleted)
    java 9543 noddoux 399r REG 8,1 55527 23060 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/petals-cdk-jbidescriptor-2.1.jar (deleted)
    java 9543 noddoux 403r REG 8,1 476481 23051 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/easywsdl-wsdl-2.3.jar (deleted)
    java 9543 noddoux 417r REG 8,1 854901 22990 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/jaxb-impl-2.1.7.jar (deleted)
    java 9543 noddoux 437r REG 8,1 995501 22995 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/axis2-kernel-1.5.jar (deleted)

    Show
    All the resources are not properly released when uninstalling the component. java 9543 noddoux DEL REG 8,1 22995 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/axis2-kernel-1.5.jar java 9543 noddoux DEL REG 8,1 22990 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/jaxb-impl-2.1.7.jar java 9543 noddoux DEL REG 8,1 23051 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/easywsdl-wsdl-2.3.jar java 9543 noddoux DEL REG 8,1 23060 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/petals-cdk-jbidescriptor-2.1.jar java 9543 noddoux DEL REG 8,1 22996 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/petals-cdk-core-5.1.jar java 9543 noddoux DEL REG 8,1 23055 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/easywsdl-schema-2.3.jar java 9543 noddoux 340r REG 8,1 286446 23055 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/easywsdl-schema-2.3.jar (deleted) java 9543 noddoux 390r REG 8,1 257121 22996 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/petals-cdk-core-5.1.jar (deleted) java 9543 noddoux 399r REG 8,1 55527 23060 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/petals-cdk-jbidescriptor-2.1.jar (deleted) java 9543 noddoux 403r REG 8,1 476481 23051 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/easywsdl-wsdl-2.3.jar (deleted) java 9543 noddoux 417r REG 8,1 854901 22990 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/jaxb-impl-2.1.7.jar (deleted) java 9543 noddoux 437r REG 8,1 995501 22995 /home/noddoux/petals-platform-3.1.1-SNAPSHOT-3/repository/components/petals-se-jsr181-10-21-2010-115637142/install/axis2-kernel-1.5.jar (deleted)
  • Environment:
    os: all

Issue Links

Activity

Hide
Christophe DENEUX added a comment - Tue, 6 Oct 2015 - 11:14:33 +0200

Should be resolved with PETALSDISTRIB-109

Show
Christophe DENEUX added a comment - Tue, 6 Oct 2015 - 11:14:33 +0200 Should be resolved with PETALSDISTRIB-109
Hide
Vincent Zurczak added a comment - Wed, 3 Nov 2010 - 12:56:27 +0100

I've tried with both values (false and true).
I cannot find the difference. And with both, there are locked Jar files in the component class loader.
I don't think the stack trace is related to the initial bug report.

Show
Vincent Zurczak added a comment - Wed, 3 Nov 2010 - 12:56:27 +0100 I've tried with both values (false and true). I cannot find the difference. And with both, there are locked Jar files in the component class loader. I don't think the stack trace is related to the initial bug report.
Hide
Christophe DENEUX added a comment - Wed, 3 Nov 2010 - 11:55:42 +0100

Have you set hotdeployment to false in the axis2.xml ?

Show
Christophe DENEUX added a comment - Wed, 3 Nov 2010 - 11:55:42 +0100 Have you set hotdeployment to false in the axis2.xml ?
Hide
Vincent Zurczak added a comment - Wed, 3 Nov 2010 - 11:48:07 +0100

I installed and uninstalled the SE. I used the JConsole to force the GC and then to dump the heap.
But then, in MAT, I cannot find the stack trace you printed above. How did you get it?
I found ComponentClassLoader instances, but their stack trace is empty (Java Basics > Thread Stacks).

Show
Vincent Zurczak added a comment - Wed, 3 Nov 2010 - 11:48:07 +0100 I installed and uninstalled the SE. I used the JConsole to force the GC and then to dump the heap. But then, in MAT, I cannot find the stack trace you printed above. How did you get it? I found ComponentClassLoader instances, but their stack trace is empty (Java Basics > Thread Stacks).
Hide
Christophe DENEUX added a comment - Tue, 2 Nov 2010 - 18:02:17 +0100

I have just installed and uninstalled the component into Petals ESB. I have not used SUs.

Show
Christophe DENEUX added a comment - Tue, 2 Nov 2010 - 18:02:17 +0100 I have just installed and uninstalled the component into Petals ESB. I have not used SUs.
Hide
Vincent Zurczak added a comment - Tue, 2 Nov 2010 - 17:54:59 +0100

I think that the classes deployment should be controlled by the BC. So, IMO, the Axis2 hot deployment is not needed.

I think so.
Since I have not set up the environement to follow the issue, can you try to see if it works?
Otherwise, I will take a look at this tomorrow.

Show
Vincent Zurczak added a comment - Tue, 2 Nov 2010 - 17:54:59 +0100
I think that the classes deployment should be controlled by the BC. So, IMO, the Axis2 hot deployment is not needed.
I think so. Since I have not set up the environement to follow the issue, can you try to see if it works? Otherwise, I will take a look at this tomorrow.
Hide
Christophe DENEUX added a comment - Tue, 2 Nov 2010 - 17:51:56 +0100

Yes, your references are right.
I think that the classes deployment should be controlled by the BC. So, IMO, the Axis2 hot deployment is not needed.

Show
Christophe DENEUX added a comment - Tue, 2 Nov 2010 - 17:51:56 +0100 Yes, your references are right. I think that the classes deployment should be controlled by the BC. So, IMO, the Axis2 hot deployment is not needed.
Hide
Vincent Zurczak added a comment - Tue, 2 Nov 2010 - 17:41:55 +0100 - edited

Maybe this can help?
=> https://issues.apache.org/jira/browse/AXIS2-4263

I don't know if we need hot deployment.
According to this article, it seems to be used for file-based deployment.

Show
Vincent Zurczak added a comment - Tue, 2 Nov 2010 - 17:41:55 +0100 - edited Maybe this can help? => https://issues.apache.org/jira/browse/AXIS2-4263 I don't know if we need hot deployment. According to this article, it seems to be used for file-based deployment.
Hide
Christophe DENEUX added a comment - Tue, 2 Nov 2010 - 17:35:35 +0100

According to the Axis2 1.5.1 source code, it won't be easy to find a fix.

Show
Christophe DENEUX added a comment - Tue, 2 Nov 2010 - 17:35:35 +0100 According to the Axis2 1.5.1 source code, it won't be easy to find a fix.
Hide
Christophe DENEUX added a comment - Tue, 2 Nov 2010 - 16:15:33 +0100 - edited

This can be a consequence of a TimerThread that is not stopped. Following the stack where this thread is created:

Thread [org.ow2.petals.se.jsr181.Jsr181Se@1abdf23-life Cycle Thread] (Suspended (entry into method <init> in Timer))	
	Timer.<init>(boolean) line: 122	
	Scheduler$1.run() line: 33	
	AccessController.doPrivileged(PrivilegedAction<T>) line: 76	
	Scheduler.<init>() line: 31	
	FileSystemConfigurator(DeploymentEngine).startSearch(RepositoryListener) line: 725	
	FileSystemConfigurator(DeploymentEngine).loadServices() line: 133	
	FileSystemConfigurator.loadServices() line: 147	
	ConfigurationContextFactory.createConfigurationContext(AxisConfigurator) line: 95	
	ConfigurationContextFactory.createConfigurationContextFromFileSystem(String, String) line: 206	
	ConfigurationContextFactory.createConfigurationContextFromFileSystem(String) line: 211	
	Jsr181Se.doInit() line: 96	
	Jsr181Se(AbstractComponent).init(ComponentContext) line: 435	
	ComponentLifeCycleThread.doTask(String) line: 101	
	ComponentLifeCycleThread(AbstractThread).run() line: 110

This thread is created even if deployers are unset in the file: axis2.xml:

<!-- deployer extension=".class" directory="pojo" class="org.apache.axis2.deployment.POJODeployer"/>
    <deployer extension=".jar" directory="servicejars" class="org.apache.axis2.jaxws.framework.JAXWSDeployer"/-->
Show
Christophe DENEUX added a comment - Tue, 2 Nov 2010 - 16:15:33 +0100 - edited This can be a consequence of a TimerThread that is not stopped. Following the stack where this thread is created:
Thread [org.ow2.petals.se.jsr181.Jsr181Se@1abdf23-life Cycle Thread] (Suspended (entry into method <init> in Timer))	
	Timer.<init>(boolean) line: 122	
	Scheduler$1.run() line: 33	
	AccessController.doPrivileged(PrivilegedAction<T>) line: 76	
	Scheduler.<init>() line: 31	
	FileSystemConfigurator(DeploymentEngine).startSearch(RepositoryListener) line: 725	
	FileSystemConfigurator(DeploymentEngine).loadServices() line: 133	
	FileSystemConfigurator.loadServices() line: 147	
	ConfigurationContextFactory.createConfigurationContext(AxisConfigurator) line: 95	
	ConfigurationContextFactory.createConfigurationContextFromFileSystem(String, String) line: 206	
	ConfigurationContextFactory.createConfigurationContextFromFileSystem(String) line: 211	
	Jsr181Se.doInit() line: 96	
	Jsr181Se(AbstractComponent).init(ComponentContext) line: 435	
	ComponentLifeCycleThread.doTask(String) line: 101	
	ComponentLifeCycleThread(AbstractThread).run() line: 110
This thread is created even if deployers are unset in the file: axis2.xml:
<!-- deployer extension=".class" directory="pojo" class="org.apache.axis2.deployment.POJODeployer"/>
    <deployer extension=".jar" directory="servicejars" class="org.apache.axis2.jaxws.framework.JAXWSDeployer"/-->
Hide
Vincent Zurczak added a comment - Thu, 21 Oct 2010 - 18:13:54 +0200 - edited

Indeed, when uninstalled, the component directory is not removed from the repository.
Some jar files remain.

The original entry was made under Linux, with

lsof -p <petals_pid> | grep petals-se-talend

It was confirmed under Windows.
Note that this problem does not impact SU. Just the component.
And no error is displayed by Petals. But taking a look at the OS resources indicate some JARs are not released correctly.

It seems this error is due to EasyWSDL.
A more recent version should fix it (to be confirmed).

Show
Vincent Zurczak added a comment - Thu, 21 Oct 2010 - 18:13:54 +0200 - edited Indeed, when uninstalled, the component directory is not removed from the repository. Some jar files remain. The original entry was made under Linux, with
lsof -p <petals_pid> | grep petals-se-talend
It was confirmed under Windows. Note that this problem does not impact SU. Just the component. And no error is displayed by Petals. But taking a look at the OS resources indicate some JARs are not released correctly. It seems this error is due to EasyWSDL. A more recent version should fix it (to be confirmed).

People

Dates

  • Created:
    Thu, 21 Oct 2010 - 11:59:02 +0200
    Updated:
    Tue, 6 Oct 2015 - 11:14:33 +0200
    Resolved:
    Tue, 6 Oct 2015 - 11:14:33 +0200