https://issues.apache.org/bugzilla/show_bug.cgi?id=53171
Priority: P2
Bug ID: 53171
Assignee: [email protected]
Summary: Deadlock under Java 7 / DefaultInstanceManager
Severity: normal
Classification: Unclassified
OS: Linux
Reporter: [email protected]
Hardware: PC
Status: NEW
Version: 7.0.27
Component: Catalina
Product: Tomcat 7
Created attachment 28703
--> https://issues.apache.org/bugzilla/attachment.cgi?id=28703&action=edit
Changing the Hashmap by Collections.synchonizedMap()
Not sure if it is java 7 related, but I had repeatetly that deadlock when I got
the srver under some load. A simple replacement of the HashMap by a synchonized
one did help (patch attached); but I dont know if that is a good solution as I
dont get the idea of the AnnotationCache.
http-apr-80-exec-348" daemon prio=10 tid=0x00007f4f64da9000 nid=0x6306 waiting
for monitor entry [0x00007f4f46cd7000]
java.lang.Thread.State: BLOCKED (on object monitor)
at
org.apache.catalina.core.DefaultInstanceManager.populateAnnotationsCache(DefaultInstanceManager.java:256)
- waiting to lock <0x00000007063b3d90> (a java.util.WeakHashMap)
at
org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:143)
at
org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:137)
at
org.apache.jsp.templates.web.templates.s2.inc_005fcategory_jsp._jspx_meth_ox_005fifexists_005f1(inc_005fcategory_jsp.java:708)
at
org.apache.jsp.templates.web.templates.s2.inc_005fcategory_jsp._jspx_meth_ox_005frepeat_005f0(inc_005fcategory_jsp.java:118)
at
org.apache.jsp.templates.web.templates.s2.inc_005fcategory_jsp._jspService(inc_005fcategory_jsp.java:70)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
--
You are receiving this mail because:
You are the assignee for the bug.