-
1. Re: Memory Leak with java.security.ProtectionDomain
hillside_emc Mar 19, 2014 5:46 PM (in response to hillside_emc)I just wanted to add more info and hope a JBoss classloading expert can help.
After enabling trace for classloading, we see the following repeated messages:
2014-03-19 10:59:41,756 TRACE [org.jboss.classloader.spi.base.BaseClassLoader] (http-0.0.0.0-9080-3) BaseClassLoader@1a7f14f{vfsfile:/opt/dctm67/svr1/share/jboss5.1.0/server/DctmServer_MethodServer/deploy/ServerApps.ear/} load class locally javax.xml.namespace.NamespaceContext
2014-03-19 10:59:41,756 TRACE [org.jboss.classloader.spi.base.BaseClassLoader] (http-0.0.0.0-9080-3) BaseClassLoader@1a7f14f{vfsfile:/opt/dctm67/svr1/share/jboss5.1.0/server/DctmServer_MethodServer/deploy/ServerApps.ear/} getPackage javax.xml.namespace
2014-03-19 10:59:41,756 TRACE [org.jboss.classloader.spi.base.BaseClassLoader] (http-0.0.0.0-9080-3) BaseClassLoader@1a7f14f{vfsfile:/opt/dctm67/svr1/share/jboss5.1.0/server/DctmServer_MethodServer/deploy/ServerApps.ear/} already loaded package javax.xml.namespace javax.xml.namespace
2014-03-19 10:59:41,790 TRACE [org.jboss.classloader.spi.base.BaseClassLoader] (http-0.0.0.0-9080-3) BaseClassLoader@1a7f14f{vfsfile:/opt/dctm67/svr1/share/jboss5.1.0/server/DctmServer_MethodServer/deploy/ServerApps.ear/} load class locally javax.xml.namespace.NamespaceContext
Basically, the class javax.xml.namespace.NamespaceContext is loaded over and over repeatedly.
javax.xml.namespace.NamespaceContext is included in geronimo-stax-api_1.0_spec-1.0.jar. What is interesting is javax.xml.namespace.NamespaceContext is also included in the JVM's rt.jar.
Would that explain why the same class is loaded again and again? And with each loaded class, do we have one ProtectionDomain object created? (That is my guess based on heap dump analysis.)
What would cause it? How can we avoid this issue?
Thanks!