[
https://issues.apache.org/jira/browse/LOG4J2-505?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Remko Popma resolved LOG4J2-505.
--------------------------------
Resolution: Not A Problem
Fix Version/s: 2.0-beta9
Assignee: Remko Popma
This is not a memory leak. By default, Async Loggers create a ring buffer of
256K slots (configurable).
When inspecting the jmap dump you provided, I found exactly the expected number
of AsyncLoggerConfigHelper$Log4jEventWrapper objects: 262,145.
Some background: Async Loggers are based on the LMAX Disruptor. The Disruptor,
by design, creates a ring buffer with some specified number of slots. All
objects in this ring buffer are pre-allocated and never garbage-collected
during the life of the system.
> Memory leak with
> org.apache.logging.log4j.core.async.AsyncLoggerConfigHelper$Log4jEventWrapper
> ----------------------------------------------------------------------------------------------
>
> Key: LOG4J2-505
> URL: https://issues.apache.org/jira/browse/LOG4J2-505
> Project: Log4j 2
> Issue Type: Bug
> Components: Core
> Affects Versions: 2.0-beta9
> Reporter: Tal Liron
> Assignee: Remko Popma
> Fix For: 2.0-beta9
>
>
> Instances of this class seem to be created but never garbage collected. Here
> is a jmap dump of the problem:
> https://dl.dropboxusercontent.com/u/122806/jvm8_gc2.zip
> Use jhat to analyze it: if you go to the instance count, you will see that
> the aforementioned class is way out of control.
> Some background on how I discovered this, which may help: I am currently
> working with the Oracle OpenJDK team to debug a memory leak that has existed
> with JSR-292 (invokedynamic) that has been present since 7u40, and also
> plagues OpenJDK 8 right now. The bug is prevalent in the Nashorn engine,
> which is being shipped with JDK 8. Indeed, in the memory dump above, you'll
> see that JSR-292 and Nashorn classes are also out of control -- but still
> second to the log4j class!
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]