]
Scott Marlow commented on AS7-2251:
-----------------------------------
Testing fix pushed to branch
Classloader leak in BeanMetaDataCache
-------------------------------------
Key: AS7-2251
URL:
https://issues.jboss.org/browse/AS7-2251
Project: Application Server 7
Issue Type: Bug
Components: JPA / Hibernate
Affects Versions: 7.0.2.Final
Environment: Linux 3.0.0-12-generic #20-Ubuntu SMP Fri Oct 7 14:56:25 UTC 2011
x86_64 x86_64 x86_64 GNU/Linux
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Reporter: Harald Wellmann
Assignee: Scott Marlow
Labels: classloader
Fix For: 7.1.0.Beta1
I'm running a real-world Java EE 6 application on JBoss AS 7 which I've already
tested on JBoss AS 6, GlassFish and Resin. The application uses JPA, EJB, CDI, JAXB,
Servlet and JSP.
After redeploying the application a couple of times by simply touching the WAR in the
standalone/deployments directory, I'm getting a PermGen OutOfMemoryError, which did
not occur on the other servers.
Inspecting a heap dump with Eclipse Memory Analyzer, I can see a single instance of
org.hibernate.validator.metadata.BeanMetaDataCache holding references to various classes
from my own persistence unit, but these classes are loaded from different instances of
org.jboss.modules.ModuleClassLoader, all with the same module identifier
deployment.myapp.war.
It seems that the BeanMetaDataCache does not get cleared when an application is
undeployed, so that the server core keeps holding stale references to application
classloaders, thus causing the PermGen leak.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: