My Oracle Support Banner

Deadlock Between HttpApplication and ConcurrentReaderHashMap In Oracle Application Server 10.1.2 (Doc ID 1368246.1)

Last updated on FEBRUARY 13, 2024

Applies to:

Oracle Containers for J2EE - Version 10.1.2.0.2 and later
Information in this document applies to any platform.

Symptoms

Application running on Oracle Application Server 10.1.2.0.2 fails with no apparent reason twice a week with the following deadlock:

Found one Java-level deadlock:
=============================
"ApplicationServerThread-33":
waiting to lock monitor 0x00000001001fffd8 (object 0xfffffffe56e14a78, a <CUSTOMPACKAGE>.concurrent.ConcurrentReaderHashMap),
which is held by "AJPRequestHandler-ApplicationServerThread-14"
"AJPRequestHandler-ApplicationServerThread-14":
waiting to lock monitor 0x00000001044c79a8 (object 0xfffffffe56e145f8, a com.evermind.server.http.HttpApplication),
which is held by "ApplicationServerThread-33"



Java stack information for the threads listed above:
==================================

"ApplicationServerThread-33":
at com.evermind.server.http.HttpApplication.destroyServlets(HttpApplication.java:6063)
- waiting to lock <0xfffffffe56e14a78> (a <CUSTOMPACKAGE>.concurrent.ConcurrentReaderHashMap)
at com.evermind.server.http.HttpApplication.destroy(HttpApplication.java:6005)
- locked <0xfffffffe56e145f8> (a com.evermind.server.http.HttpApplication)
at com.evermind.server.http.HttpSite.initApplications(HttpSite.java:587)
at com.evermind.server.http.HttpSite.setConfig(HttpSite.java:278)
- locked <0xfffffffe5275fa08> (a java.lang.Object)
at com.evermind.server.http.administration.DefaultHttpSiteAdministrator.bindWebApp(DefaultHttpSiteAdministrator.java:77)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:124)
at com.evermind.server.rmi.RMICallHandler.run(RMICallHandler.java:48)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
at java.lang.Thread.run(Thread.java:534)


"AJPRequestHandler-ApplicationServerThread-14":
at org.apache.axis.transport.http.AxisServletBase.getEngine(AxisServletBase.java:170)
- waiting to lock <0xfffffffe56e145f8> (a com.evermind.server.http.HttpApplication)
at org.apache.axis.transport.http.AxisServletBase.getOption(AxisServletBase.java:396)
at org.apache.axis.transport.http.AxisServlet.init(AxisServlet.java:163)
at javax.servlet.GenericServlet.init(GenericServlet.java:258)
at com.evermind.server.http.HttpApplication.loadServlet(HttpApplication.java:2354)
at com.evermind.server.http.HttpApplication.findServlet(HttpApplication.java:4795)
- locked <0xfffffffe56e14a78> (a <CUSTOMPACKAGE>.concurrent.ConcurrentReaderHashMap)
at com.evermind.server.http.HttpApplication.getRequestDispatcher(HttpApplication.java:2673)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:680)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:224)
at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:133)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
at java.lang.Thread.run(Thread.java:534)

Found 1 deadlock.

Changes

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.