Anonymous | Login | Signup for a new account | 12-09-2024 15:33 PST |
Main | My View | View Issues | Change Log | Docs |
Viewing Issue Advanced Details [ Jump to Notes ] | [ View Simple ] [ Issue History ] [ Print ] | ||||||||
ID | Category | Severity | Reproducibility | Date Submitted | Last Update | ||||
0003423 | [Resin] | minor | always | 03-27-09 07:11 | 05-07-09 13:16 | ||||
Reporter | ferg | View Status | public | ||||||
Assigned To | ferg | ||||||||
Priority | normal | Resolution | fixed | Platform | |||||
Status | closed | OS | |||||||
Projection | none | OS Version | |||||||
ETA | none | Fixed in Version | 4.0.1 | Product Version | 3.1.8 | ||||
Product Build | |||||||||
Summary | 0003423: ClassEntry/SystemClassLoader deadlock | ||||||||
Description |
I've occassionally found a thread deadlock in a halted instance of Resin-3.1.8. I've appended the jstack trace. Xalan XSLTC does employ some aggressive classloading, since it's a XSLT-to-java compiler. It seems that it would occassionally (I don't remember this happening often) cause resin's classloader to fail. Looks like thread http--8123-29 and thread http--8123-33 are deadlocked in the classloader code, Found one Java-level deadlock: ============================= "http--8123-120$22712691": waiting to lock monitor 0x08b126ac (object 0x5828b390, a ru.sbtc.util.StylesheetManager), which is held by "http--8123-25$8931423" "http--8123-25$8931423": waiting to lock monitor 0x08b0b5e0 (object 0x5525c6b0, a com.caucho.loader.SystemClassLoader), which is held by "http--8123-33$15917864" "http--8123-33$15917864": waiting to lock monitor 0x089d2be0 (object 0x5d3fea48, a com.caucho.loader.ClassEntry), which is held by "http--8123-29$31079116" "http--8123-29$31079116": waiting to lock monitor 0x08b0b5e0 (object 0x5525c6b0, a com.caucho.loader.SystemClassLoader), which is held by "http--8123-33$15917864" Java stack information for the threads listed above: =================================================== "http--8123-120$22712691": at ru.sbtc.util.StylesheetManager.getTransformer(StylesheetManager.java:139) - waiting to lock <0x5828b390> (a ru.sbtc.util.StylesheetManager) at ru.sbtc.sitebuilder.servlet.XMLMenuServlet.doGet(XMLMenuServlet.java:84) at javax.servlet.http.HttpServlet.service(HttpServlet.java:114) at javax.servlet.http.HttpServlet.service(HttpServlet.java:91) ... "http--8123-25$8931423": at org.apache.xalan.xsltc.compiler.XPathLexer.<init>(XPathLexer.java:165) at org.apache.xalan.xsltc.compiler.Parser.parseTopLevel(Parser.java:1092) at org.apache.xalan.xsltc.compiler.Parser.parseExpression(Parser.java:1055) at org.apache.xalan.xsltc.compiler.If.parseContents(If.java:61) at org.apache.xalan.xsltc.compiler.SyntaxTreeNode.parseChildren(SyntaxTreeNode.java:432) at org.apache.xalan.xsltc.compiler.VariableBase.parseContents(VariableBase.java:229) at org.apache.xalan.xsltc.compiler.Variable.parseContents(Variable.java:53) at org.apache.xalan.xsltc.compiler.Stylesheet.parseOwnChildren(Stylesheet.java:577) at org.apache.xalan.xsltc.compiler.Stylesheet.parseContents(Stylesheet.java:559) at org.apache.xalan.xsltc.compiler.Parser.createAST(Parser.java:383) at org.apache.xalan.xsltc.compiler.XSLTC.compile(XSLTC.java:361) at org.apache.xalan.xsltc.compiler.XSLTC.compile(XSLTC.java:446) at org.apache.xalan.xsltc.trax.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:799) at ru.sbtc.util.StylesheetManager.loadTemplates(StylesheetManager.java:174) at ru.sbtc.util.StylesheetManager.getTransformer(StylesheetManager.java:161) - locked <0x5828b390> (a ru.sbtc.util.StylesheetManager) at ru.sbtc.sitebuilder.servlet.XMLMenuServlet.doGet(XMLMenuServlet.java:84) at javax.servlet.http.HttpServlet.service(HttpServlet.java:114) at javax.servlet.http.HttpServlet.service(HttpServlet.java:91) ... "http--8123-33$15917864": at com.caucho.loader.DynamicClassLoader.loadClass(DynamicClassLoader.java:1431) - waiting to lock <0x5d3fea48> (a com.caucho.loader.ClassEntry) at com.caucho.loader.DynamicClassLoader.findClassImpl(DynamicClassLoader.java:1390) at com.caucho.loader.DynamicClassLoader.loadClassImpl(DynamicClassLoader.java:1289) at com.caucho.loader.SystemClassLoader.loadClassImpl(SystemClassLoader.java:217) at com.caucho.loader.DynamicClassLoader.loadClass(DynamicClassLoader.java:1219) at com.caucho.loader.DynamicClassLoader.loadClass(DynamicClassLoader.java:1203) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) - locked <0x5525c6b0> (a com.caucho.loader.SystemClassLoader) at org.apache.xalan.xsltc.compiler.Stylesheet.setImportPrecedence(Stylesheet.java:324) at org.apache.xalan.xsltc.compiler.Import.parseContents(Import.java:115) at org.apache.xalan.xsltc.compiler.Stylesheet.parseOwnChildren(Stylesheet.java:587) at org.apache.xalan.xsltc.compiler.Stylesheet.parseContents(Stylesheet.java:559) at org.apache.xalan.xsltc.compiler.Parser.createAST(Parser.java:383) at org.apache.xalan.xsltc.compiler.XSLTC.compile(XSLTC.java:361) at org.apache.xalan.xsltc.compiler.XSLTC.compile(XSLTC.java:446) at org.apache.xalan.xsltc.trax.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:799) at ru.sbtc.util.StylesheetManager.loadTemplates(StylesheetManager.java:174) at ru.sbtc.util.StylesheetManager.getTransformer(StylesheetManager.java:161) - locked <0x57067f10> (a ru.sbtc.util.StylesheetManager) at ru.sbtc.sitebuilder.servlet.XMLServlet.doGet(XMLServlet.java:193) at javax.servlet.http.HttpServlet.service(HttpServlet.java:114) at javax.servlet.http.HttpServlet.service(HttpServlet.java:91) ... "http--8123-29$31079116": at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:620) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124) at com.caucho.loader.DynamicClassLoader.loadClass(DynamicClassLoader.java:1523) - locked <0x5d3fea48> (a com.caucho.loader.ClassEntry) at com.caucho.loader.DynamicClassLoader.findClassImpl(DynamicClassLoader.java:1390) at com.caucho.loader.DynamicClassLoader.loadClassImpl(DynamicClassLoader.java:1289) at com.caucho.loader.SystemClassLoader.loadClassImpl(SystemClassLoader.java:217) at com.caucho.loader.DynamicClassLoader.loadClassImpl(DynamicClassLoader.java:1279) at com.caucho.loader.DynamicClassLoader.loadClassImpl(DynamicClassLoader.java:1279) at com.caucho.loader.DynamicClassLoader.loadClassImpl(DynamicClassLoader.java:1279) at com.caucho.loader.DynamicClassLoader.loadClass(DynamicClassLoader.java:1219) at com.caucho.loader.DynamicClassLoader.loadClass(DynamicClassLoader.java:1203) at org.apache.xalan.xsltc.compiler.ObjectFactory.findProviderClass(ObjectFactory.java:508) at org.apache.xalan.xsltc.compiler.Parser.makeInstance(Parser.java:919) at org.apache.xalan.xsltc.compiler.Parser.startElement(Parser.java:1243) at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source) at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source) at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) at org.apache.xalan.xsltc.compiler.Parser.parse(Parser.java:415) at org.apache.xalan.xsltc.compiler.Parser.parse(Parser.java:467) at org.apache.xalan.xsltc.compiler.Import.parseContents(Import.java:99) at org.apache.xalan.xsltc.compiler.Stylesheet.parseOwnChildren(Stylesheet.java:587) at org.apache.xalan.xsltc.compiler.Stylesheet.parseContents(Stylesheet.java:559) at org.apache.xalan.xsltc.compiler.Parser.createAST(Parser.java:383) at org.apache.xalan.xsltc.compiler.XSLTC.compile(XSLTC.java:361) at org.apache.xalan.xsltc.compiler.XSLTC.compile(XSLTC.java:446) at org.apache.xalan.xsltc.trax.TransformerFactoryImpl.newTemplates(TransformerFactoryImpl.java:799) at ru.sbtc.util.StylesheetManager.loadTemplates(StylesheetManager.java:174) at ru.sbtc.util.StylesheetManager.getTransformer(StylesheetManager.java:161) - locked <0x5600ca80> (a ru.sbtc.util.StylesheetManager) at ru.sbtc.sitebuilder.InfoBlock.output(InfoBlock.java:2025) at ru.sbtc.sitebuilder.SectionToXML.process(SectionToXML.java:332) at ru.sbtc.sitebuilder.servlet.XMLServlet.doGet(XMLServlet.java:214) ... Found 1 deadlock. |
||||||||
Steps To Reproduce | |||||||||
Additional Information | |||||||||
Attached Files | |||||||||
|
Notes | |
(0003943) stbu 03-27-09 12:42 |
Scott, could this be related to the deadlock issue during JSP Precompile that I've reported at bug 3220 http://bugs.caucho.com/view.php?id=3220 [^] |
Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
31 total queries executed. 26 unique queries executed. |