You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by "Chris Graham (JIRA)" <ji...@apache.org> on 2014/03/19 04:56:45 UTC

[jira] [Created] (LOG4J2-571) AsyncLoggerConfig-1 Thread consuming excessive CPU

Chris Graham created LOG4J2-571:
-----------------------------------

             Summary: AsyncLoggerConfig-1 Thread consuming excessive CPU
                 Key: LOG4J2-571
                 URL: https://issues.apache.org/jira/browse/LOG4J2-571
             Project: Log4j 2
          Issue Type: Bug
    Affects Versions: 2.0-rc1
         Environment: AIX 6.1
oslevel -s: 6100-08-02-1316
IBM WAS: 8.5.0.2
IBM JRE/JDK:
/opt/IBM/WebSphere/AppServer/java/bin/java -version
java version "1.6.0"
Java(TM) SE Runtime Environment (build pap6460_26sr5fp2-20130423_01(SR5 FP2))
IBM J9 VM (build 2.6, JRE 1.6.0 AIX ppc64-64 Compressed References 20130419_145740 (JIT disabled, AOT disabled)
J9VM - R26_Java626_SR5_FP2_20130419_1420_B145740
GC   - R26_Java626_SR5_FP2_20130419_1420_B145740_CMPRSS
J9CL - 20130419_145740)
JCL  - 20130419_01
            Reporter: Chris Graham


In this instance, I'm an indirect used of log4j2 2.0-rc1, as it's in the web app that I'm using, Apache Archiva 2.0.1.

The issue is that when running under WebSphere 8.5.0.2 (obviously on the IBM JDK, 1.6) on AIX 6.1 TL8, Apache Archiva when it's doing nothing, is sitting idle on around 50% CPU.

Using the native AIX perf/mon tools, I've traced the source of the issue through to this Java thread. This is the relevant section from the heap dump.

3XMTHREADINFO      "AsyncLoggerConfig-1" J9VMThread:0x0000000031D14600, j9thread_t:0x00000100137D8BD0, java/lang/Thread:0x000000004301C508, state:CW, prio=5
3XMJAVALTHREAD            (java/lang/Thread getId:0x6A, isDaemon:true)
3XMTHREADINFO1            (native thread ID:0x2BF00F9, native priority:0x5, native policy:UNKNOWN)
3XMHEAPALLOC             Heap bytes allocated since last GC cycle=0 (0x0)
3XMTHREADINFO3           Java callstack:
4XESTACKTRACE                at sun/misc/Unsafe.park(Native Method)
4XESTACKTRACE                at java/util/concurrent/locks/LockSupport.parkNanos(LockSupport.java:332)
4XESTACKTRACE                at com/lmax/disruptor/SleepingWaitStrategy.applyWaitMethod(SleepingWaitStrategy.java:66)
4XESTACKTRACE                at com/lmax/disruptor/SleepingWaitStrategy.waitFor(SleepingWaitStrategy.java:39)
4XESTACKTRACE                at com/lmax/disruptor/ProcessingSequenceBarrier.waitFor(ProcessingSequenceBarrier.java:55)
4XESTACKTRACE                at com/lmax/disruptor/BatchEventProcessor.run(BatchEventProcessor.java:115)
4XESTACKTRACE                at java/util/concurrent/ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
4XESTACKTRACE                at java/util/concurrent/ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
4XESTACKTRACE                at java/lang/Thread.run(Thread.java:773)
3XMTHREADINFO3           Native callstack:
4XENATIVESTACK               _event_wait+0x2b8 (0x09000000007E7D3C [libpthreads.a+0x16d3c])
4XENATIVESTACK               _cond_wait_local+0x4e4 (0x09000000007F5A48 [libpthreads.a+0x24a48])
4XENATIVESTACK               _cond_wait+0xbc (0x09000000007F6020 [libpthreads.a+0x25020])
4XENATIVESTACK               pthread_cond_wait+0x1a8 (0x09000000007F6C8C [libpthreads.a+0x25c8c])
4XENATIVESTACK               (0x0900000001223014 [libj9thr26.so+0x6014])
4XENATIVESTACK               (0x0900000001222C60 [libj9thr26.so+0x5c60])
4XENATIVESTACK               (0x090000000116AE58 [libj9vm26.so+0xfe58])
4XENATIVESTACK               (0x090000000116B17C [libj9vm26.so+0x1017c])
4XENATIVESTACK               (0x0900000001810528 [libjclscar_26.so+0x5c528])
4XENATIVESTACK               (0x0900000001813B98 [libjclscar_26.so+0x5fb98])
4XENATIVESTACK               (0x0900000001161764 [libj9vm26.so+0x6764])
4XENATIVESTACK               (0x0900000001239CA0 [libj9prt26.so+0x2ca0])
4XENATIVESTACK               (0x09000000011615D4 [libj9vm26.so+0x65d4])
4XENATIVESTACK               (0x090000000121FAF4 [libj9thr26.so+0x2af4])
4XENATIVESTACK               _pthread_body+0xf0 (0x09000000007D4D34 [libpthreads.a+0x3d34])
NULL

I have tried both -DAsyncLoggerConfig.WaitStrategy=Block, explicitly, and the default of Sleep (by removing the -D). I have not tried Yield.




--
This message was sent by Atlassian JIRA
(v6.2#6252)

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