You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2003/02/20 14:42:26 UTC

DO NOT REPLY [Bug 17243] New: - Deadlock during classloading

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=17243>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=17243

Deadlock during classloading

           Summary: Deadlock during classloading
           Product: Tomcat 4
           Version: 4.0.1 Final
          Platform: Other
        OS/Version: Other
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: Catalina
        AssignedTo: tomcat-dev@jakarta.apache.org
        ReportedBy: peter@conscius.com


During loading of a JSP file nothing seemed to happen for a minute, so I took a 
thread dump using <ctrl><break>, which revealed the following:

     [java] FOUND A JAVA LEVEL DEADLOCK:
     [java] ----------------------------
     [java] "HttpProcessor[80][4]":
     [java]   waiting to lock monitor 0x9244b4 (object 0x10e98400, a 
org.apache.catalina.loader.WebappClassLoader$ResourceEntry),
     [java]   which is locked by "HttpProcessor[80][3]"
     [java] "HttpProcessor[80][3]":
     [java]   waiting to lock monitor 0x924634 (object 0x103773f8, a 
org.apache.catalina.loader.WebappClassLoader),
     [java]   which is locked by "HttpProcessor[80][4]"

     [java] JAVA STACK INFORMATION FOR THREADS LISTED ABOVE:
     [java] ------------------------------------------------
     [java] Java Stack for "HttpProcessor[80][4]":
     [java] ==========
     [java]     at 
org.apache.catalina.loader.WebappClassLoader.findClassInternal
(WebappClassLoader.java:1533)
     [java]     - waiting to lock <10e98400> (a 
org.apache.catalina.loader.WebappClassLoader$ResourceEntry)
     [java]     at org.apache.catalina.loader.WebappClassLoader.findClass
(WebappClassLoader.java:852)
     [java]     at org.apache.catalina.loader.WebappClassLoader.loadClass
(WebappClassLoader.java:1273)
     [java]     at org.apache.catalina.loader.WebappClassLoader.loadClass
(WebappClassLoader.java:1156)
     [java]     at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:310)
     [java]     at java.lang.ClassLoader.defineClass0(Native Method)
     [java]     at java.lang.ClassLoader.defineClass(ClassLoader.java:488)
     [java]     at java.security.SecureClassLoader.defineClass
(SecureClassLoader.java:106)
     [java]     at 
org.apache.catalina.loader.WebappClassLoader.findClassInternal
(WebappClassLoader.java:1534)
     [java]     - locked <10e98440> (a 
org.apache.catalina.loader.WebappClassLoader$ResourceEntry)
     [java]     at org.apache.catalina.loader.WebappClassLoader.findClass
(WebappClassLoader.java:852)
     [java]     at org.apache.catalina.loader.WebappClassLoader.loadClass
(WebappClassLoader.java:1273)
     [java]     at org.apache.catalina.loader.WebappClassLoader.loadClass
(WebappClassLoader.java:1156)
     [java]     at org.apache.jasper.servlet.JasperLoader.loadClass
(JasperLoader.java:198)
     [java]     at org.apache.jasper.servlet.JasperLoader.loadClass
(JasperLoader.java:132)
     [java]     at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:310)
     [java]     at java.lang.Class.newInstance0(Native Method)
     [java]     at java.lang.Class.newInstance(Class.java:232)
     [java]     at org.apache.jasper.servlet.JspServlet$JspServletWrapper.load
(JspServlet.java:139)
     [java]     at 
org.apache.jasper.servlet.JspServlet$JspServletWrapper.loadIfNecessary
(JspServlet.java:179)
     [java]     at 
org.apache.jasper.servlet.JspServlet$JspServletWrapper.service
(JspServlet.java:189)
     [java]     at org.apache.jasper.servlet.JspServlet.serviceJspFile
(JspServlet.java:382)
     [java]     at org.apache.jasper.servlet.JspServlet.service
(JspServlet.java:474)
     [java]     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
     [java]     at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:247)
     [java]     at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:193)
     [java]     at dk.netnord.cmd.servlet.RootFilter$FilterMethodContext.forward
(RootFilter.java:102)
     [java]     at dk.netnord.cmd.servlet.GetMethod.execute(GetMethod.java:77)
     [java]     at dk.netnord.cmd.servlet.RootFilter.doFilter
(RootFilter.java:52)
     [java]     at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:213)
     [java]     at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:193)
     [java]     at org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperValve.java:243)
     [java]     at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
     [java]     at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
     [java]     at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:943)
     [java]     at org.apache.catalina.core.StandardContextValve.invoke
(StandardContextValve.java:201)
     [java]     at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
     [java]     at org.apache.catalina.valves.CertificatesValve.invoke
(CertificatesValve.java:246)
     [java]     at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
     [java]     at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
     [java]     at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:943)
     [java]     at org.apache.catalina.core.StandardContext.invoke
(StandardContext.java:2344)
     [java]     at org.apache.catalina.core.StandardHostValve.invoke
(StandardHostValve.java:164)
     [java]     at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
     [java]     at org.apache.catalina.valves.ErrorDispatcherValve.invoke
(ErrorDispatcherValve.java:170)
     [java]     at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
     [java]     at org.apache.catalina.valves.ErrorReportValve.invoke
(ErrorReportValve.java:170)
     [java]     at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
     [java]     at org.apache.catalina.valves.AccessLogValve.invoke
(AccessLogValve.java:462)
     [java]     at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
     [java]     at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
     [java]     at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:943)
     [java]     at org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineValve.java:163)
     [java]     at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
     [java]     at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
     [java]     at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:943)
     [java]     at org.apache.catalina.connector.http.HttpProcessor.process
(HttpProcessor.java:1011)
     [java]     at org.apache.catalina.connector.http.HttpProcessor.run
(HttpProcessor.java:1106)
     [java]     at java.lang.Thread.run(Thread.java:479)
     [java] Java Stack for "HttpProcessor[80][3]":
     [java] ==========
     [java]     at java.lang.ClassLoader.checkCerts(ClassLoader.java:530)
     [java]     - waiting to lock <103773f8> (a 
org.apache.catalina.loader.WebappClassLoader)
     [java]     at java.lang.ClassLoader.defineClass(ClassLoader.java:482)
     [java]     at java.security.SecureClassLoader.defineClass
(SecureClassLoader.java:106)
     [java]     at 
org.apache.catalina.loader.WebappClassLoader.findClassInternal
(WebappClassLoader.java:1534)
     [java]     - locked <10e98400> (a 
org.apache.catalina.loader.WebappClassLoader$ResourceEntry)
     [java]     at org.apache.catalina.loader.WebappClassLoader.findClass
(WebappClassLoader.java:852)
     [java]     at org.apache.catalina.loader.WebappClassLoader.loadClass
(WebappClassLoader.java:1273)
     [java]     at org.apache.catalina.loader.WebappClassLoader.loadClass
(WebappClassLoader.java:1156)
     [java]     at org.apache.jasper.servlet.JasperLoader.loadClass
(JasperLoader.java:198)
     [java]     at org.apache.jasper.servlet.JasperLoader.loadClass
(JasperLoader.java:132)
     [java]     at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:310)
     [java]     at java.lang.Class.newInstance0(Native Method)
     [java]     at java.lang.Class.newInstance(Class.java:232)
     [java]     at org.apache.jasper.servlet.JspServlet$JspServletWrapper.load
(JspServlet.java:139)
     [java]     at 
org.apache.jasper.servlet.JspServlet$JspServletWrapper.loadIfNecessary
(JspServlet.java:179)
     [java]     at 
org.apache.jasper.servlet.JspServlet$JspServletWrapper.service
(JspServlet.java:189)
     [java]     at org.apache.jasper.servlet.JspServlet.serviceJspFile
(JspServlet.java:382)
     [java]     at org.apache.jasper.servlet.JspServlet.service
(JspServlet.java:474)
     [java]     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
     [java]     at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:247)
     [java]     at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:193)
     [java]     at dk.netnord.cmd.servlet.RootFilter$FilterMethodContext.forward
(RootFilter.java:102)
     [java]     at dk.netnord.cmd.servlet.GetMethod.execute(GetMethod.java:77)
     [java]     at dk.netnord.cmd.servlet.RootFilter.doFilter
(RootFilter.java:52)
     [java]     at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(ApplicationFilterChain.java:213)
     [java]     at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:193)
     [java]     at org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperValve.java:243)
     [java]     at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
     [java]     at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
     [java]     at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:943)
     [java]     at org.apache.catalina.core.StandardContextValve.invoke
(StandardContextValve.java:201)
     [java]     at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
     [java]     at org.apache.catalina.valves.CertificatesValve.invoke
(CertificatesValve.java:246)
     [java]     at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
     [java]     at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
     [java]     at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:943)
     [java]     at org.apache.catalina.core.StandardContext.invoke
(StandardContext.java:2344)
     [java]     at org.apache.catalina.core.StandardHostValve.invoke
(StandardHostValve.java:164)
     [java]     at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
     [java]     at org.apache.catalina.valves.ErrorDispatcherValve.invoke
(ErrorDispatcherValve.java:170)
     [java]     at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
     [java]     at org.apache.catalina.valves.ErrorReportValve.invoke
(ErrorReportValve.java:170)
     [java]     at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
     [java]     at org.apache.catalina.valves.AccessLogValve.invoke
(AccessLogValve.java:462)
     [java]     at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:564)
     [java]     at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
     [java]     at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:943)
     [java]     at org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineValve.java:163)
     [java]     at org.apache.catalina.core.StandardPipeline.invokeNext
(StandardPipeline.java:566)
     [java]     at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:472)
     [java]     at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:943)
     [java]     at org.apache.catalina.connector.http.HttpProcessor.process
(HttpProcessor.java:1011)
     [java]     at org.apache.catalina.connector.http.HttpProcessor.run
(HttpProcessor.java:1106)
     [java]     at java.lang.Thread.run(Thread.java:479)

     [java] Found 1 deadlock.

---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org