accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "John Stoneham (JIRA)" <j...@apache.org>
Subject [jira] [Created] (ACCUMULO-1697) Thread leaks in Tomcat on hot-redeploy
Date Fri, 06 Sep 2013 17:59:51 GMT
John Stoneham created ACCUMULO-1697:
---------------------------------------

             Summary: Thread leaks in Tomcat on hot-redeploy
                 Key: ACCUMULO-1697
                 URL: https://issues.apache.org/jira/browse/ACCUMULO-1697
             Project: Accumulo
          Issue Type: Bug
    Affects Versions: 1.4.0
            Reporter: John Stoneham
            Priority: Minor


Testing on 1.3.7 cluster with Tomcat and redeploying my web app by 'touch'ing the .war file.

In catalina.out:
Sep 06, 2013 4:46:38 PM org.apache.catalina.startup.HostConfig deleteRedeployResources
INFO: Undeploying context [/myapp]
Sep 06, 2013 4:46:48 PM org.jboss.modcluster.ModClusterService drainSessions
WARN: Failed to drain pending requests from context [/myapp] within specified timeout: 10
seconds
Sep 06, 2013 4:46:48 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/myapp] appears to have started a thread named [localhost-startStop-6-SendThread(r03sv04:2181)]
but has failed to stop it. This is very likely to create a memory leak.
Sep 06, 2013 4:46:48 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/myapp] appears to have started a thread named [localhost-startStop-6-EventThread]
but has failed to stop it. This is very likely to create a memory leak.
Sep 06, 2013 4:46:48 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
SEVERE: The web application [/myapp] appears to have started a thread named [Thrift Connection
Pool Checker] but has failed to stop it. This is very likely to create a memory leak.

I can't easily re-test this on a 1.4 or 1.5 cluster at this time, but I examined the current
code in ThriftTransportPool regarding the third message. No reference is kept to the Daemon
instance, so it's never stopped. This is normally not a problem in JVMs because daemon threads
are interrupted automatically at JVM shutdown, but this is a problem for hot-redeploys in
Tomcat.

It would be nice to have a call to shut down the Thrift checker thread. For the ZooKeeper
threads, we should be able to call ClientCnxn.close() by calling ZooKeeper.close(), but the
ZooKeepers are locked up in ZooSession.sessions and can't be closed directly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message