As part of looking at WFLY-12671, I found that org.jboss.jca.core.connectionmanager.pool.idle.IdleRemover$IdleRemoverRunner is leaking the application classloader (after undeployment) via org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory originalTCCL being kept after undeployment.
See attached jcaleakmarlow.txt, which shows the leak.
I tried waiting a few minutes after undeployment and the leak was still there. I also tried an even simpler app (2lc.jar) and still there is a leak. I also attached the heapdump (java_pid12802.0001.zip)
To recreate:
- Deploy simple (no app code will be executed) 2lc.jar app.
- Undeploy by doing "rm 2lc.jar.deployed" in eap/standalone/deployments.
- Look for org.jboss.as.jpa.config.PersistenceUnitMetadataImpl memory leak with MAT or other memory leak tool.
- is blocked by
-
JBEAP-17911 Upgrade IronJacamar to 1.4.19.Final
- Closed
- is incorporated by
-
JBEAP-17911 Upgrade IronJacamar to 1.4.19.Final
- Closed
- is related to
-
WFLY-12676 memory leak, org.jboss.jca.core.connectionmanager.pool.idle.IdleRemover$IdleRemoverRunner is keeping deployment in memory after undeployment
- Closed