JBoss deadlocks in LogManager
Issue
- JBoss becomes unresponsive and the thread dumps show threads heavily stalled in logging due to a deadlock in log manager code:
"http-/0.0.0.0:8080-815":
at java.io.PrintStream.println(PrintStream.java:805)
- waiting to lock <0x9ffffffe24c7dd58> (a java.io.PrintStream)
at org.jboss.stdio.StdioContext$DelegatingPrintStream.println(StdioContext.java:297)
at java.util.logging.ErrorManager.error(ErrorManager.java:94)
- locked <0x9ffffffe218b3810> (a java.util.logging.ErrorManager)
at java.util.logging.Handler.reportError(Handler.java:232)
at org.jboss.logmanager.handlers.WriterHandler.safeFlush(WriterHandler.java:175)
at org.jboss.logmanager.handlers.WriterHandler.flush(WriterHandler.java:142)
- locked <0x9ffffffe218b3840> (a java.lang.Object)
at org.jboss.logmanager.ExtHandler.doPublish(ExtHandler.java:104)
at org.jboss.logmanager.handlers.WriterHandler.doPublish(WriterHandler.java:70)
- locked <0x9ffffffe218b3840> (a java.lang.Object)
at org.jboss.logmanager.ExtHandler.publish(ExtHandler.java:76)
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:290)
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:298)
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:298)
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:298)
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:298)
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:298)
at org.jboss.logmanager.Logger.logRaw(Logger.java:721)
at org.jboss.logmanager.Logger.logRaw(Logger.java:731)
at org.jboss.logmanager.Logger.log(Logger.java:367)
...
"http-/0.0.0.0:8080-1409":
at org.jboss.logmanager.handlers.WriterHandler.doPublish(WriterHandler.java:59)
- waiting to lock <0x9ffffffe218b3840> (a java.lang.Object)
at org.jboss.logmanager.ExtHandler.publish(ExtHandler.java:76)
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:290)
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:298)
at org.jboss.logmanager.Logger.logRaw(Logger.java:721)
at org.jboss.logmanager.Logger.log(Logger.java:506)
at org.jboss.stdio.AbstractLoggingWriter.write(AbstractLoggingWriter.java:71)
- locked <0x9ffffffe24c7de00> (a java.lang.StringBuilder)
at org.jboss.stdio.WriterOutputStream.finish(WriterOutputStream.java:143)
at org.jboss.stdio.WriterOutputStream.flush(WriterOutputStream.java:164)
- locked <0x9ffffffe24c7df18> (a sun.nio.cs.UTF_8$Decoder)
at java.io.PrintStream.write(PrintStream.java:482)
- locked <0x9ffffffe24c7dd58> (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 <0x9ffffffe24c7e340> (a java.io.OutputStreamWriter)
at java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:185)
at java.io.PrintStream.newLine(PrintStream.java:546)
- locked <0x9ffffffe24c7dd58> (a java.io.PrintStream)
at java.io.PrintStream.println(PrintStream.java:807)
- locked <0x9ffffffe24c7dd58> (a java.io.PrintStream)
at org.jboss.stdio.StdioContext$DelegatingPrintStream.println(StdioContext.java:297)
at java.util.logging.ErrorManager.error(ErrorManager.java:94)
- locked <0x9ffffffe212bf3c0> (a java.util.logging.ErrorManager)
at java.util.logging.Handler.reportError(Handler.java:232)
at org.jboss.logmanager.handlers.WriterHandler.doPublish(WriterHandler.java:73)
at org.jboss.logmanager.ExtHandler.publish(ExtHandler.java:76)
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:290)
at org.jboss.logmanager.Logger.logRaw(Logger.java:721)
at org.jboss.logmanager.Logger.fine(Logger.java:481)
...
Environment
- JBoss Enterprise Application Platform (EAP) 6
- 6.0.1
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.