[jboss-cvs] JBossAS SVN: r76112 - trunk/testsuite/src/main/org/jboss/test/classloader/leak/clstore.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Jul 22 17:52:04 EDT 2008
Author: bstansberry at jboss.com
Date: 2008-07-22 17:52:04 -0400 (Tue, 22 Jul 2008)
New Revision: 76112
Modified:
trunk/testsuite/src/main/org/jboss/test/classloader/leak/clstore/ClassLoaderStore.java
Log:
Minor logging tweaks; pause between big tasks to let system do other work
Modified: trunk/testsuite/src/main/org/jboss/test/classloader/leak/clstore/ClassLoaderStore.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/classloader/leak/clstore/ClassLoaderStore.java 2008-07-22 17:04:29 UTC (rev 76111)
+++ trunk/testsuite/src/main/org/jboss/test/classloader/leak/clstore/ClassLoaderStore.java 2008-07-22 21:52:04 UTC (rev 76112)
@@ -116,6 +116,7 @@
if (weakReferenceOnLoader.get() == null)
{
+ log.debug("leakAnalyzer.forceGC() released CL ref");
return null;
}
@@ -126,20 +127,29 @@
return null;
}
+ // Sleep a bit to allow CPU to do work like exchange cluster PING responses
+ Thread.sleep(20);
+
leakAnalyzer.heapSnapshot("snapshot", "mem");
if (weakReferenceOnLoader.get() == null)
{
+ log.debug("leakAnalyzer.heapSnapshot() released CL ref");
return null;
}
+
+ Thread.sleep(20);
HashMap datapoints = leakAnalyzer.createIndexMatrix();
if (weakReferenceOnLoader.get() == null)
{
+ log.debug("leakAnalyzer.createIndexMatrix() released CL ref");
return null;
}
+ Thread.sleep(20);
+
String report = leakAnalyzer.exploreObjectReferences(datapoints, weakReferenceOnLoader.get(), 18, true, false);
log.info(report);
if (reportHTMLFile != null)
@@ -150,6 +160,8 @@
realoutput.println(report);
realoutput.close();
}
+
+ Thread.sleep(20);
leakAnalyzer.forceGC();
}
@@ -177,6 +189,7 @@
{
int toAdd = adds[i];
System.gc();
+ System.runFinalization();
if (ref.get() == null)
break;
@@ -200,7 +213,21 @@
{
log.warn("Caught throwable filling memory: " + t);
System.gc();
+ System.runFinalization();
break;
+ }
+ finally
+ {
+ // Sleep a bit to allow CPU to do work like exchange cluster PING responses
+ try
+ {
+ Thread.sleep(20);
+ }
+ catch (InterruptedException ignored)
+ {
+ log.warn("Interrupted");
+ break;
+ }
}
}
@@ -223,7 +250,10 @@
}
if (ref.get() != null)
+ {
System.gc();
+ System.runFinalization();
+ }
}
public void removeClassLoader(String key)
More information about the jboss-cvs-commits
mailing list