slf4j ConsoleAppender block ODL threads

Description

"nioEventLoopGroup-11-3" prio=10 tid=0x00007f9b6c510000 nid=0x131b waiting for monitor entry [0x00007f9ac9a94000]
java.lang.Thread.State: BLOCKED (on object monitor)
at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:231)

  • waiting to lock <0x00000000b20126e8> (a org.apache.log4j.ConsoleAppender)
    at org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:66)
    at org.apache.log4j.Category.callAppenders(Category.java:193)
    at org.apache.log4j.Category.forcedLog(Category.java:365)
    at org.apache.log4j.Category.log(Category.java:772)
    at org.ops4j.pax.logging.service.internal.PaxLoggerImpl.inform(PaxLoggerImpl.java:143)
    at org.ops4j.pax.logging.internal.TrackingLogger.inform(TrackingLogger.java:86)
    at org.ops4j.pax.logging.slf4j.Slf4jLogger.info(Slf4jLogger.java:476)
    at org.opendaylight.openflowjava.protocol.impl.core.TcpChannelInitializer.initChannel(TcpChannelInitializer.java:60)
    at org.opendaylight.openflowjava.protocol.impl.core.TcpChannelInitializer.initChannel(TcpChannelInitializer.java:32)

"DEFAULT_POOL_9" prio=10 tid=0x00007f9b381a8000 nid=0x6a40 waiting for monitor entry [0x00007f9ac9e99000]
java.lang.Thread.State: BLOCKED (on object monitor)
at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:231)

  • waiting to lock <0x00000000b20126e8> (a org.apache.log4j.ConsoleAppender)
    at org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:66)
    at org.apache.log4j.Category.callAppenders(Category.java:193)
    at org.apache.log4j.Category.forcedLog(Category.java:365)
    at org.apache.log4j.Category.log(Category.java:772)
    at org.ops4j.pax.logging.service.internal.PaxLoggerImpl.warn(PaxLoggerImpl.java:151)
    at org.ops4j.pax.logging.internal.TrackingLogger.warn(TrackingLogger.java:91)
    at org.ops4j.pax.logging.slf4j.Slf4jLogger.warn(Slf4jLogger.java:697)
    at com.cxtrm.contexcontrol.underlaymanager.impl.controllermanager.ControllerStatusSentry$2.work(ControllerStatusSentry.java:107)
    java.lang.Thread.State: BLOCKED (on object monitor)
    at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:231)

  • waiting to lock <0x00000000b20126e8> (a org.apache.log4j.ConsoleAppender)
    at org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:66)
    at org.apache.log4j.Category.callAppenders(Category.java:193)
    at org.apache.log4j.Category.forcedLog(Category.java:365)
    at org.apache.log4j.Category.log(Category.java:772)
    at org.ops4j.pax.logging.service.internal.PaxLoggerImpl.warn(PaxLoggerImpl.java:151)
    at org.ops4j.pax.logging.internal.TrackingLogger.warn(TrackingLogger.java:91)
    at org.ops4j.pax.logging.slf4j.Slf4jLogger.warn(Slf4jLogger.java:716)
    at org.opendaylight.openflowplugin.openflow.md.core.ErrorHandlerSimpleImpl.handleException(ErrorHandlerSimpleImpl.java:35)
    at org.opendaylight.openflowplugin.openflow.md.core.HandshakeManagerImpl.shake(HandshakeManagerImpl.java:117)
    at org.opendaylight.openflowplugin.openflow.md.core.HandshakeStepWrapper.run(HandshakeStepWrapper.java:47)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)

Should consider working with log4j version 2 and higher. It can be possible by working with log4j-slf4j-impl instead of log4j-over-slf4j.

Environment

Operating System: All
Platform: All

Activity

Show:

Robert Varga May 2, 2018 at 9:42 AM

Karaf-4.1.x rolled out, which uses log4j2

Robert Varga February 17, 2017 at 12:56 AM

Tomer Pearl January 10, 2016 at 7:13 AM

Robert Varga August 28, 2015 at 8:20 AM

Logging is handled by karaf. Log4j2 will be available with karaf 4. Moving to the controller project.

Vratko Polak July 15, 2015 at 3:46 PM

This change solves similar issue in another way. Maybe a cherry-pick to master would fix this Bug for Helium?
https://git.opendaylight.org/gerrit/#/c/23411

Done

Details

Assignee

Reporter

External issue ID

Components

Fix versions

Priority

Created June 24, 2015 at 6:55 AM
Updated May 2, 2018 at 9:42 AM
Resolved May 2, 2018 at 9:42 AM