You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@logging.apache.org by "Hash Jang (Jira)" <ji...@apache.org> on 2020/06/28 02:45:00 UTC

[jira] [Created] (LOG4J2-2880) High CPU consumption using StackWalker

Hash Jang created LOG4J2-2880:
---------------------------------

             Summary: High CPU consumption using StackWalker
                 Key: LOG4J2-2880
                 URL: https://issues.apache.org/jira/browse/LOG4J2-2880
             Project: Log4j 2
          Issue Type: Bug
          Components: Core
    Affects Versions: 2.13.3, 2.13.2, 2.13.1, 2.13.0, 2.12.1, 2.12.0, 2.11.2, 2.11.1
         Environment: log4j version: 2.12.1

JDK version: OpenJDK 11.0.6
            Reporter: Hash Jang
         Attachments: image-2020-06-28-02-42-12-987.png

While using OpenJDK 11, there are possibility cause severe CPU consumption because of JDK bug in using StackWalker. 

 

[Application on JDK11 consume 100% CPU after a few hours of uptime|[https://bugs.openjdk.java.net/browse/JDK-8222942]]

 

And it happened serveral times on our production environment.

 

!image-2020-06-28-02-42-12-987.png!

 

Stack trace Is:

"reactor-http-epoll-1" #69 daemon prio=5 os_prio=0 cpu=25789335.11ms elapsed=306523.88s tid=0x00007f8713f99800 nid=0x5d runnable  [0x00007f8605645000]"reactor-http-epoll-1" #69 daemon prio=5 os_prio=0 cpu=25789335.11ms elapsed=306523.88s tid=0x00007f8713f99800 nid=0x5d runnable  [0x00007f8605645000]   java.lang.Thread.State: RUNNABLE at java.lang.StackStreamFactory$AbstractStackWalker.fetchStackFrames(java.base@11.0.6/Native Method) at java.lang.StackStreamFactory$AbstractStackWalker.fetchStackFrames(java.base@11.0.6/StackStreamFactory.java:386) at java.lang.StackStreamFactory$AbstractStackWalker.getNextBatch(java.base@11.0.6/StackStreamFactory.java:322) at java.lang.StackStreamFactory$AbstractStackWalker.peekFrame(java.base@11.0.6/StackStreamFactory.java:263) at java.lang.StackStreamFactory$AbstractStackWalker.hasNext(java.base@11.0.6/StackStreamFactory.java:351) at java.lang.StackStreamFactory$StackFrameTraverser.nextStackFrame(java.base@11.0.6/StackStreamFactory.java:520) at java.lang.StackStreamFactory$StackFrameTraverser.forEachRemaining(java.base@11.0.6/StackStreamFactory.java:581) at java.util.stream.AbstractPipeline.copyInto(java.base@11.0.6/AbstractPipeline.java:484) at java.util.stream.AbstractPipeline.wrapAndCopyInto(java.base@11.0.6/AbstractPipeline.java:474) at java.util.stream.AbstractPipeline.evaluate(java.base@11.0.6/AbstractPipeline.java:550) at java.util.stream.AbstractPipeline.evaluateToArrayNode(java.base@11.0.6/AbstractPipeline.java:260) at java.util.stream.ReferencePipeline.toArray(java.base@11.0.6/ReferencePipeline.java:517) at java.util.stream.ReferencePipeline.toArray(java.base@11.0.6/ReferencePipeline.java:523) at org.apache.logging.log4j.util.StackLocator$FqcnCallerLocator.apply(StackLocator.java:96) at org.apache.logging.log4j.util.StackLocator$FqcnCallerLocator.apply(StackLocator.java:90) at java.lang.StackStreamFactory$StackFrameTraverser.consumeFrames(java.base@11.0.6/StackStreamFactory.java:534) at java.lang.StackStreamFactory$AbstractStackWalker.doStackWalk(java.base@11.0.6/StackStreamFactory.java:306) at java.lang.StackStreamFactory$AbstractStackWalker.callStackWalk(java.base@11.0.6/Native Method) at java.lang.StackStreamFactory$AbstractStackWalker.beginStackWalk(java.base@11.0.6/StackStreamFactory.java:370) at java.lang.StackStreamFactory$AbstractStackWalker.walk(java.base@11.0.6/StackStreamFactory.java:243) at java.lang.StackWalker.walk(java.base@11.0.6/StackWalker.java:498) at org.apache.logging.log4j.util.StackLocator.calcLocation(StackLocator.java:81) at org.apache.logging.log4j.util.StackLocatorUtil.calcLocation(StackLocatorUtil.java:76) at org.apache.logging.log4j.spi.AbstractLogger.getLocation(AbstractLogger.java:2201) at org.apache.logging.log4j.spi.AbstractLogger.logMessageTrackRecursion(AbstractLogger.java:2144) at org.apache.logging.log4j.spi.AbstractLogger.logMessageSafely(AbstractLogger.java:2127) at org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:2026) at org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1899) at org.apache.logging.log4j.spi.AbstractLogger.info(AbstractLogger.java:1441)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)