JBoss becomes slow/unresponsive with many threads waiting on a BaseClassLoader
Issue
- Our JBoss server becomes slow and unresponsive. Thread dumps show that many threads are backed up waiting on a BaseClassLoader:
Thread: http-0.0.0.0-8080-1 : priority:5, demon:true, threadId:3295, threadState:TIMED_WAITING - waiting on <0x32666d51> (a org.jboss.classloader.spi.base.BaseClassLoader) java.lang.Object.wait(Native Method) org.jboss.classloader.spi.base.BaseClassLoader.acquireLockFairly(BaseClassLoader.java:1110) org.jboss.classloader.spi.base.BaseClassLoader.loadClassFromDomain(BaseClassLoader.java:838) org.jboss.classloader.spi.base.BaseClassLoader.doLoadClass(BaseClassLoader.java:502) org.jboss.classloader.spi.base.BaseClassLoader.loadClass(BaseClassLoader.java:447) java.lang.ClassLoader.loadClass(ClassLoader.java:295) - locked <0x2743e345> (a org.jboss.web.tomcat.service.WebCtxLoader$ENCLoader) java.lang.ClassLoader.loadClass(ClassLoader.java:247) java.lang.Class.forName0(Native Method) java.lang.Class.forName(Class.java:247) ... - We see errors caused by the following exceptions during these times as well:
java.lang.IllegalStateException: Waiting too long to get the classloader lock: BaseClassLoader@2d2050ea{vfszip:/jboss-eap-5.1/jboss-as/server/default/deploy/app.war/}
Environment
- JBoss Enterprise Application Platform
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.
