Log4j 2
  1. Log4j 2
  2. LOG4J2-425

Permgen leak in AsyncLoggerConfigHelper

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0-beta9
    • Fix Version/s: 2.0-rc1
    • Component/s: Appenders
    • Labels:
      None
    • Environment:

      JDK7, Win8 64bit

      Description

      Thread local 'currentLogEvent' is not cleaned on shutdown which prevent web applications clean undeploying.
      Tomcat prints following:

      SEVERE: The web application [/web] created a ThreadLocal with key of type [java.lang.ThreadLocal] (value [java.lang.ThreadLocal@22410487]) and a value of type [org.apache.logging.log4j.core.impl.Log4jLogEvent] (value [Logger=********* Level=INFO Message=************]) 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.
      

      We use async loggers declared explicitly in log4j2.xml:
      <AsyncLogger name="logger" additivity="false" level="trace"> ......

      We use RollingRandomAccessFile as appender.

        Issue Links

          Activity

            People

            • Assignee:
              Remko Popma
              Reporter:
              Sergey Alaev
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development