• 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 Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Tomcat DeadLocks

 
Greenhorn
Posts: 7
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • 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
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
reply
    Bookmark Topic Watch Topic
  • New Topic