Infinite stack printing with JBoss Modules and LogManager classes
Issue
- There's a classloading error during logging (
NoClassDefFoundErrororClassNotFoundException), which tries to log the error, which gets another classloading error and so on. The stack trace is very big and has a pattern similar to this:
...
at org.jboss.logmanager.Logger.log(Logger.java:367) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.modules.log.JDKModuleLogger.doLog(JDKModuleLogger.java:109)
at org.jboss.modules.log.JDKModuleLogger.classDefineFailed(JDKModuleLogger.java:194)
at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:401)
at org.jboss.modules.ModuleClassLoader.loadClassLocal(ModuleClassLoader.java:243)
at org.jboss.modules.ModuleClassLoader$1.loadClassLocal(ModuleClassLoader.java:73)
at org.jboss.modules.Module.loadModuleClass(Module.java:527)
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:182)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456)
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120)
at java.lang.Class.forName0(Native Method) [rt.jar:1.7.0_21]
at java.lang.Class.forName(Class.java:266) [rt.jar:1.7.0_21]
at org.jboss.logmanager.formatters.Formatters$12.guessClass(Formatters.java:578) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.formatters.Formatters$12.renderExtended(Formatters.java:421) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.formatters.Formatters$12.renderRaw(Formatters.java:388) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.formatters.Formatters$JustifyingFormatStep.render(Formatters.java:150) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.formatters.MultistepFormatter.format(MultistepFormatter.java:86) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.ExtFormatter.format(ExtFormatter.java:35) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.handlers.WriterHandler.doPublish(WriterHandler.java:49) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.ExtHandler.publish(ExtHandler.java:76) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:290) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:298) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:298) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:298) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:298) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:298) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.LoggerNode.publish(LoggerNode.java:298) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.Logger.logRaw(Logger.java:721) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.Logger.log(Logger.java:672) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logmanager.Logger.log(Logger.java:684) [jboss-logmanager-1.3.2.Final-redhat-1.jar:1.3.2.Final-redhat-1]
at org.jboss.logging.JBossLogManagerLogger.doLog(JBossLogManagerLogger.java:40) [jboss-logging-3.1.2.GA-redhat-1.jar:3.1.2.GA-redhat-1]
at org.jboss.logging.Logger.error(Logger.java:1208) [jboss-logging-3.1.2.GA-redhat-1.jar:3.1.2.GA-redhat-1]
at com.example.MyApplication.someMethod(MyApplication.java:194) [myApp.jar:]
- We are migrating our application from AS to EAP version on production environment. But we are facing very strange behaviour. Our set up is with two JBoss EAP node cluster and Apache mod_cluster as front end. When we start node one, node get started and when we start another, it starts throwing exception. This is true when we do visa versa, but sometimes both get started without any error.
Environment
- Red Hat JBoss Enterprise Application Platform (EAP)
- 6.1.x
- 6.2.x
- 6.3.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.
