Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-17803

memory leak, org.jboss.jca.core.connectionmanager.pool.idle.IdleRemover$IdleRemoverRunner is keeping deployment in memory after undeployment

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Blocker Blocker
    • 7.3.0.GA
    • None
    • JCA
    • None

      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.

        1. 2lc.jar
          2 kB
        2. java_pid12802.0001.zip
          41.06 MB
        3. jcaleakmarlow.txt
          3 kB

              smaestri@redhat.com Stefano Maestri
              smarlow1@redhat.com Scott Marlow
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: