EAP 6 deadlocks on a logging RollingFileAppenders and java.io.PrintStream
Issue
- A deadlock between multiple
RollingFileAppenders:
"Thread-2158" daemon prio=10 tid=0x00007ffb80077000 nid=0x7f61 waiting for monitor entry [0x00007ffbaae86000]
java.lang.Thread.State: BLOCKED (on object monitor)
at java.io.PrintStream.println(PrintStream.java:806)
- waiting to lock <0x000000074ac95720> (a java.io.PrintStream)
at org.jboss.stdio.StdioContext$DelegatingPrintStream.println(StdioContext.java:474)
at org.apache.log4j.helpers.LogLog.debug(LogLog.java:100)
at org.apache.log4j.RollingFileAppender.rollOver(RollingFileAppender.java:153)
at org.apache.log4j.RollingFileAppender.subAppend(RollingFileAppender.java:280)
at org.apache.log4j.WriterAppender.append(WriterAppender.java:162)
at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:251)
- locked <0x000000074c79a260> (a org.apache.log4j.RollingFileAppender)
at org.apache.log4j.JBossAppenderHandler.doPublish(JBossAppenderHandler.java:34)
at org.jboss.logmanager.ExtHandler.publish(ExtHandler.java:76)
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:302)
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:310)
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:310)
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:310)
at org.jboss.logmanager.Logger.logRaw(Logger.java:719)
at org.apache.log4j.Category.callAppenders(Category.java:69)
at org.apache.log4j.Category.forcedLog(Category.java:121)
at org.apache.log4j.Category.info(Category.java:241)
at org.rak.logger.service.impl.XMLMaskingLog4jServiceImpl$1.run(XMLMaskingLog4jServiceImpl.java:126)
at java.lang.Thread.run(Thread.java:745)
Locked ownable synchronizers:
- None
"http-127.0.0.1:38443-5" daemon prio=10 tid=0x00007ffb8c019000 nid=0x6e40 waiting for monitor entry [0x00007ffba8a05000]
java.lang.Thread.State: BLOCKED (on object monitor)
at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:231)
- waiting to lock <0x000000074c79a260> (a org.apache.log4j.RollingFileAppender)
at org.apache.log4j.JBossAppenderHandler.doPublish(JBossAppenderHandler.java:34)
at org.jboss.logmanager.ExtHandler.publish(ExtHandler.java:76)
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:302)
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:310)
at org.jboss.logmanager.Logger.logRaw(Logger.java:719)
at org.jboss.logmanager.Logger.log(Logger.java:504)
at org.jboss.stdio.AbstractLoggingWriter.write(AbstractLoggingWriter.java:71)
- locked <0x000000074ac95788> (a java.lang.StringBuilder)
at org.jboss.stdio.WriterOutputStream.finish(WriterOutputStream.java:143)
at org.jboss.stdio.WriterOutputStream.flush(WriterOutputStream.java:164)
- locked <0x000000074ac95840> (a sun.nio.cs.UTF_8$Decoder)
at java.io.PrintStream.write(PrintStream.java:482)
- locked <0x000000074ac95720> (a java.io.PrintStream)
at sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:221)
at sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:291)
at sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:104)
- locked <0x000000074ac95c18> (a java.io.OutputStreamWriter)
at java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:185)
at java.io.PrintStream.newLine(PrintStream.java:546)
- locked <0x000000074ac95720> (a java.io.PrintStream)
at java.io.PrintStream.println(PrintStream.java:807)
- locked <0x000000074ac95720> (a java.io.PrintStream)
at org.jboss.stdio.StdioContext$DelegatingPrintStream.println(StdioContext.java:474)
...
Environment
- JBoss Enterprise Application Platform (EAP) 6.x
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
