• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Ron McLeod
  • Paul Clapham
  • Bear Bibeault
  • Junilu Lacar
Sheriffs:
  • Jeanne Boyarsky
  • Tim Cooke
  • Henry Wong
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • salvin francis
  • Frits Walraven
Bartenders:
  • Scott Selikoff
  • Piet Souris
  • Carey Brown

Tomcat DeadLocks

 
Greenhorn
Posts: 7
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Environment - /Tomcat6/bin/version.sh

Using CATALINA_BASE: /Tomcat6
Using CATALINA_HOME: /Tomcat6
Using CATALINA_TMPDIR: /Tomcat6/temp
Using JRE_HOME: /usr/java/jdk1.6.0_23
Using CLASSPATH: /Tomcat6/bin/bootstrap.jar
Server version: Apache Tomcat/6.0.29
Server built: July 19 2010 1458
Server number: 6.0.0.29
OS Name: Linux
OS Version: 2.6.18-164.el5
Architecture: i386
JVM Version: 1.6.0_23-b05
JVM Vendor: Sun Microsystems Inc.

Its a spring based web application few important 3rd party tools to mention are Castor 1.2, logback 1.6.4 tomcat jdbc connection pool.

We are seeing lot of threads locked on org.apache.catalina.loader.WebappClassLoader.loadClass -


Thread 1981: (state = BLOCKED)
- org.apache.catalina.loader.WebappClassLoader.loadClass(java.lang.String, boolean) @bci=0, line=1524 (Compiled frame)
- org.apache.catalina.loader.WebappClassLoader.loadClass(java.lang.String) @bci=3, line=1491 (Compiled frame)
- javax.xml.parsers.FactoryFinder.getProviderClass(java.lang.String, java.lang.ClassLoader, boolean) @bci=25, line=111 (Interpreted frame)
- javax.xml.parsers.FactoryFinder.newInstance(java.lang.String, java.lang.ClassLoader, boolean) @bci=3, line=146 (Interpreted frame)
- javax.xml.parsers.FactoryFinder.find(java.lang.String, java.lang.String) @bci=345, line=233 (Interpreted frame)
- javax.xml.parsers.SAXParserFactory.newInstance() @bci=4, line=128 (Interpreted frame)
- org.exolab.castor.xml.util.XMLParserUtils.getSAXParser(boolean, boolean) @bci=2, line=118 (Interpreted frame)
- org.castor.xml.AbstractInternalContext.getXMLReader(java.lang.String) @bci=56, line=262 (Interpreted frame)
- org.castor.xml.AbstractInternalContext.getXMLReader() @bci=2, line=248 (Interpreted frame)
- org.exolab.castor.xml.Unmarshaller.unmarshal(org.xml.sax.InputSource) @bci=8, line=692 (Interpreted frame)
- org.springframework.oxm.castor.CastorMarshaller.unmarshalInputStream(java.io.InputStream) @bci=12, line=386 (Interpreted frame)
- org.springframework.oxm.support.AbstractMarshaller.unmarshalStreamSource(javax.xml.transform.stream.StreamSource) @bci=12, line=368 (Interpreted frame)
- org.springframework.oxm.support.AbstractMarshaller.unmarshal(javax.xml.transform.Source) @bci=57, line=134 (Interpreted frame)



12650 - org.apache.catalina.loader.WebappClassLoader.loadClass(java.lang.String, boolean) @bci=0, line=1524 (Compiled frame)
12651 - org.apache.catalina.loader.WebappClassLoader.loadClass(java.lang.String) @bci=3, line=1491 (Compiled frame)
12652 - ch.qos.logback.classic.spi.PackagingDataCalculator.loadClass(java.lang.ClassLoader, java.lang.String) @bci=8, line=199 (Compiled frame)
12653 - ch.qos.logback.classic.spi.PackagingDataCalculator.bestEffortLoadClass(java.lang.ClassLoader, java.lang.String) @bci=3, line=218 (Compiled frame)
12654 - ch.qos.logback.classic.spi.PackagingDataCalculator.computeBySTEP(ch.qos.logback.classic.spi.StackTraceElementProxy, java.lang.ClassLoader) @bci=32 , line=133 (Compiled frame)
12655 - ch.qos.logback.classic.spi.PackagingDataCalculator.populateUncommonFrames(int, ch.qos.logback.classic.spi.StackTraceElementProxy[], java.lang.Clas sLoader) @bci=26, line=108 (Compiled frame)
12656 - ch.qos.logback.classic.spi.PackagingDataCalculator.populateFrames(ch.qos.logback.classic.spi.StackTraceElementProxy[]) @bci=182, line=100 (Compile d frame)
12657 - ch.qos.logback.classic.spi.PackagingDataCalculator.calculate(ch.qos.logback.classic.spi.IThrowableProxy) @bci=11, line=58 (Compiled frame)
12658 - ch.qos.logback.classic.spi.ThrowableProxy.calculatePackagingData() @bci=24, line=100 (Compiled frame)
12659 - ch.qos.logback.classic.spi.LoggingEvent.<init>(java.lang.String, ch.qos.logback.classic.Logger, ch.qos.logback.classic.Level, java.lang.String, ja va.lang.Throwable, java.lang.Object[]) @bci=131, line=128 (Compiled frame)
12660 - ch.qos.logback.classic.Logger.buildLoggingEventAndAppend(java.lang.String, org.slf4j.Marker, ch.qos.logback.classic.Level, java.lang.String, java. lang.Object[], java.lang.Throwable) @bci=13, line=468 (Compiled frame)
12661 - ch.qos.logback.classic.Logger.filterAndLog_0_Or3Plus(java.lang.String, org.slf4j.Marker, ch.qos.logback.classic.Level, java.lang.String, java.lang .Object[], java.lang.Throwable) @bci=57, line=424 (Compiled frame)
12662 - ch.qos.logback.classic.Logger.error(java.lang.String, java.lang.Throwable) @bci=11, line=587 (Interpreted frame)



Thread 1939: (state = BLOCKED)
- java.lang.ClassLoader.findLoadedClass0(java.lang.String) @bci=0 (Compiled frame; information may be imprecise)
- java.lang.ClassLoader.findLoadedClass(java.lang.String) @bci=12, line=950 (Compiled frame)
- org.apache.catalina.loader.WebappClassLoader.loadClass(java.lang.String, boolean) @bci=134, line=1548 (Compiled frame)
- org.apache.catalina.loader.WebappClassLoader.loadClass(java.lang.String) @bci=3, line=1491 (Compiled frame)
- javax.xml.parsers.FactoryFinder.getProviderClass(java.lang.String, java.lang.ClassLoader, boolean) @bci=25, line=111 (Interpreted frame)
- javax.xml.parsers.FactoryFinder.newInstance(java.lang.String, java.lang.ClassLoader, boolean) @bci=3, line=146 (Interpreted frame)
- javax.xml.parsers.FactoryFinder.find(java.lang.String, java.lang.String) @bci=345, line=233 (Interpreted frame)
- javax.xml.parsers.SAXParserFactory.newInstance() @bci=4, line=128 (Interpreted frame)
- org.exolab.castor.xml.util.XMLParserUtils.getSAXParser(boolean, boolean) @bci=2, line=118 (Interpreted frame)
- org.castor.xml.AbstractInternalContext.getXMLReader(java.lang.String) @bci=56, line=262 (Interpreted frame)
- org.castor.xml.AbstractInternalContext.getXMLReader() @bci=2, line=248 (Interpreted frame)
- org.exolab.castor.xml.Unmarshaller.unmarshal(org.xml.sax.InputSource) @bci=8, line=692 (Interpreted frame)
- org.springframework.oxm.castor.CastorMarshaller.unmarshalInputStream(java.io.InputStream) @bci=12, line=386 (Interpreted frame)
- org.springframework.oxm.support.AbstractMarshaller.unmarshalStreamSource(javax.xml.transform.stream.StreamSource) @bci=12, line=368 (Interpreted frame)
- org.springframework.oxm.support.AbstractMarshaller.unmarshal(javax.xml.transform.Source) @bci=57, line=134 (Interpreted frame)



Thread 1899: (state = BLOCKED)
- org.apache.catalina.loader.WebappClassLoader.loadClass(java.lang.String, boolean) @bci=0, line=1524 (Compiled frame)
- org.apache.catalina.loader.WebappClassLoader.loadClass(java.lang.String) @bci=3, line=1491 (Compiled frame)
- com.sun.org.apache.xerces.internal.parsers.ObjectFactory.findProviderClass(java.lang.String, java.lang.ClassLoader, boolean) @bci=55, line=393 (Interpreted frame)
- com.sun.org.apache.xerces.internal.parsers.ObjectFactory.newInstance(java.lang.String, java.lang.ClassLoader, boolean) @bci=3, line=348 (Interpreted frame)
- com.sun.org.apache.xerces.internal.parsers.ObjectFactory.createObject(java.lang.String, java.lang.String, java.lang.String) @bci=76, line=154 (Interpreted frame)
- com.sun.org.apache.xerces.internal.parsers.ObjectFactory.createObject(java.lang.String, java.lang.String) @bci=3, line=97 (Interpreted frame)
- com.sun.org.apache.xerces.internal.parsers.SAXParser.<init>(com.sun.org.apache.xerces.internal.util.SymbolTable, com.sun.org.apache.xerces.internal.xni.grammars.XMLGrammarPool) @bci=5, line=102 (Interpreted frame)
- com.sun.org.apache.xerces.internal.parsers.SAXParser.<init>() @bci=3, line=87 (Interpreted frame)
- com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.<init>(com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl) @bci=1, line=332 (Interpreted frame)
- com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.<init>(com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl, java.util.Hashtable, boolean) @bci=15, line=122 (Interpreted frame)
- com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl.newSAXParser() @bci=13, line=76 (Interpreted frame)
- org.exolab.castor.xml.util.XMLParserUtils.getSAXParser(boolean, boolean) @bci=17, line=122 (Interpreted frame)
- org.castor.xml.AbstractInternalContext.getXMLReader(java.lang.String) @bci=56, line=262 (Interpreted frame)
- org.castor.xml.AbstractInternalContext.getXMLReader() @bci=2, line=248 (Interpreted frame)
- org.exolab.castor.xml.Unmarshaller.unmarshal(org.xml.sax.InputSource) @bci=8, line=692 (Interpreted frame)
- org.springframework.oxm.castor.CastorMarshaller.unmarshalInputStream(java.io.InputStream) @bci=12, line=386 (Interpreted frame)
- org.springframework.oxm.support.AbstractMarshaller.unmarshalStreamSource(javax.xml.transform.stream.StreamSource) @bci=12, line=368 (Interpreted frame)
- org.springframework.oxm.support.AbstractMarshaller.unmarshal(javax.xml.transform.Source) @bci=57, line=134 (Interpreted frame)


Thread 1702: (state = BLOCKED)
- org.apache.catalina.loader.WebappClassLoader.loadClass(java.lang.String, boolean) @bci=0, line=1524 (Compiled frame)
- org.apache.catalina.loader.WebappClassLoader.loadClass(java.lang.String) @bci=3, line=1491 (Compiled frame)
- com.sun.org.apache.xerces.internal.impl.dv.ObjectFactory.findProviderClass(java.lang.String, java.lang.ClassLoader, boolean) @bci=55, line=395 (Interpreted frame)
- com.sun.org.apache.xerces.internal.impl.dv.ObjectFactory.newInstance(java.lang.String, java.lang.ClassLoader, boolean) @bci=3, line=350 (Interpreted frame)
- com.sun.org.apache.xerces.internal.impl.dv.DTDDVFactory.getInstance(java.lang.String) @bci=5, line=59 (Interpreted frame)
- com.sun.org.apache.xerces.internal.impl.dv.DTDDVFactory.getInstance() @bci=2, line=44 (Interpreted frame)
- com.sun.org.apache.xerces.internal.parsers.XML11Configuration.<init>(com.sun.org.apache.xerces.internal.util.SymbolTable, com.sun.org.apache.xerces.internal.xni.grammars.XMLGrammarPool, com.sun.org.apache.xerces.internal.xni.parser.XMLComponentManager) @bci=815, line=538 (Interpreted frame)
- com.sun.org.apache.xerces.internal.parsers.XIncludeAwareParserConfiguration.<init>(com.sun.org.apache.xerces.internal.util.SymbolTable, com.sun.org.apache.xerces.internal.xni.grammars.XMLGrammarPool, com.sun.org.apache.xerces.internal.xni.parser.XMLComponentManager) @bci=4, line=125 (Interpreted frame)
- com.sun.org.apache.xerces.internal.parsers.XIncludeAwareParserConfiguration.<init>() @bci=4, line=86 (Interpreted frame)
- sun.reflect.GeneratedConstructorAccessor6.newInstance(java.lang.Object[]) @bci=24 (Interpreted frame)
- sun.reflect.DelegatingConstructorAccessorImpl.newInstance(java.lang.Object[]) @bci=5, line=27 (Compiled frame)
- java.lang.reflect.Constructor.newInstance(java.lang.Object[]) @bci=92, line=513 (Compiled frame)
- java.lang.Class.newInstance0() @bci=118, line=355 (Interpreted frame)
- java.lang.Class.newInstance() @bci=15, line=308 (Interpreted frame)
- com.sun.org.apache.xerces.internal.parsers.ObjectFactory.newInstance(java.lang.String, java.lang.ClassLoader, boolean) @bci=8, line=349 (Interpreted frame)
- com.sun.org.apache.xerces.internal.parsers.ObjectFactory.createObject(java.lang.String, java.lang.String, java.lang.String) @bci=76, line=154 (Interpreted frame)
- com.sun.org.apache.xerces.internal.parsers.ObjectFactory.createObject(java.lang.String, java.lang.String) @bci=3, line=97 (Interpreted frame)
- com.sun.org.apache.xerces.internal.parsers.SAXParser.<init>(com.sun.org.apache.xerces.internal.util.SymbolTable, com.sun.org.apache.xerces.internal.xni.grammars.XMLGrammarPool) @bci=5, line=102 (Interpreted frame)
- com.sun.org.apache.xerces.internal.parsers.SAXParser.<init>() @bci=3, line=87 (Interpreted frame)
- com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.<init>(com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl) @bci=1, line=332 (Interpreted frame)
- com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.<init>(com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl, java.util.Hashtable, boolean) @bci=15, line=122 (Interpreted frame)
- com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl.newSAXParser() @bci=13, line=76 (Interpreted frame)
- org.exolab.castor.xml.util.XMLParserUtils.getSAXParser(boolean, boolean) @bci=17, line=122 (Interpreted frame)

- org.castor.xml.AbstractInternalContext.getXMLReader(java.lang.String) @bci=56, line=262 (Interpreted frame)
- org.castor.xml.AbstractInternalContext.getXMLReader() @bci=2, line=248 (Interpreted frame)
- org.exolab.castor.xml.Unmarshaller.unmarshal(org.xml.sax.InputSource) @bci=8, line=692 (Interpreted frame)
- org.springframework.oxm.castor.CastorMarshaller.unmarshalInputStream(java.io.InputStream) @bci=12, line=386 (Interpreted frame)
- org.springframework.oxm.support.AbstractMarshaller.unmarshalStreamSource(javax.xml.transform.stream.StreamSource) @bci=12, line=368 (Interpreted frame)
- org.springframework.oxm.support.AbstractMarshaller.unmarshal(javax.xml.transform.Source) @bci=57, line=134 (Interpreted frame)
- com.cms.common.concurrent.ResponseDataProcessingThread.run() @bci=44, line=139 (Interpreted frame)
- java.lang.Thread.run() @bci=11, line=662 (Interpreted frame)

Locked ownable synchronizers:
- None

Tomcat has become unresponsive, while application is yet to reach level of stability, but these issues doesn't look like are caused by application.

Has anyone faced/seen similar issues?

--Bhushan
 
Consider Paul's rocket mass heater.
    Bookmark Topic Watch Topic
  • New Topic