logging-log4j-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robin Jansohn (JIRA)" <j...@apache.org>
Subject [jira] [Created] (LOG4J2-1159) ThreadLocal leaks in Tomcat8 (org.apache.logging.log4j.core.async.AsyncLogger.Info)
Date Wed, 14 Oct 2015 11:15:05 GMT
Robin Jansohn created LOG4J2-1159:
-------------------------------------

             Summary: ThreadLocal leaks in Tomcat8 (org.apache.logging.log4j.core.async.AsyncLogger.Info)
                 Key: LOG4J2-1159
                 URL: https://issues.apache.org/jira/browse/LOG4J2-1159
             Project: Log4j 2
          Issue Type: Bug
          Components: Core
    Affects Versions: 2.4.1, 2.4
            Reporter: Robin Jansohn
            Priority: Minor


Since v2.4 there a TreadLocal warnings reported by Tomcat. A minimal webapp to reproduce can
be found here: https://github.com/jansohn/log4j2-threadlocal

{noformat}
WARNUNG: The web application [log4j2webapp] appears to have started a thread named [AsyncLogger-1]
but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
 sun.misc.Unsafe.park(Native Method)
 java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
 java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
 com.lmax.disruptor.BlockingWaitStrategy.waitFor(BlockingWaitStrategy.java:45)
 com.lmax.disruptor.ProcessingSequenceBarrier.waitFor(ProcessingSequenceBarrier.java:55)
 com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:123)
 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
 java.lang.Thread.run(Thread.java:745)
Okt 14, 2015 1:06:48 PM org.apache.catalina.loader.WebappClassLoaderBase checkThreadLocalMapForLeaks
SCHWERWIEGEND: The web application [log4j2webapp] created a ThreadLocal with key of type [org.apache.logging.log4j.core.async.AsyncLogger$Info$1]
(value [org.apache.logging.log4j.core.async.AsyncLogger$Info$1@1d29f54]) and a value of type
[org.apache.logging.log4j.core.async.AsyncLogger.Info] (value [org.apache.logging.log4j.core.async.AsyncLogger$Info@1ea59ba])
but failed to remove it when the web application was stopped. Threads are going to be renewed
over time to try and avoid a probable memory leak.
{noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org


Mime
View raw message