[
http://jira.jboss.com/jira/browse/JBAS-2909?page=all ]
Dimitris Andreadis updated JBAS-2909:
-------------------------------------
Component/s: Test Suite
Fix Version/s: (was: JBossAS-4.2.0.CR1)
Assignee: Clebert Suconic
Added component, assigned to Clebert.
Testcase infra structure for MemoryLeaks
----------------------------------------
Key: JBAS-2909
URL:
http://jira.jboss.com/jira/browse/JBAS-2909
Project: JBoss Application Server
Issue Type: Feature Request
Security Level: Public(Everyone can see)
Components: Test Suite
Reporter: Clebert Suconic
Assigned To: Clebert Suconic
Fix For: JBossAS-5.0.1.CR1
We could modify JBossTestCase::deploy to introspect every package being deployed and
write details to a list. (say the name of the loaded classes, the name of the package and
the name of the test).
Later before stopping the server on the testsuite, we should introspect loaded classes on
the server and compare to the list. The intersection should be zero.
Also before doing such comparisson is a good idea to force an OutOfMemoryError, forcing
eventual SoftReferences being released (e.g. JavaSerialization or any other Reflection
cache)
To load the list we could use -XX:PrintClassHIstogram with a kill -3 on the server, or
JVMTIInterface from JBossProfiler could also give you such list (by using a couple of
methods for that).
This is an example of how to list loaded classes using JVMTIInterface from
JBossProfiler:
jvmtiInterface.forceReleaseOfGC();
Class[] classes = jvmtiInterface.getLoadedClasses();
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira