ADF 12.2.1.4: Thread Stuck Waiting for java.util.concurrent.locks.ReentrantLock$NonfairSync
(Doc ID 2830553.1)
Last updated on JANUARY 06, 2022
Applies to:
Oracle JDeveloper - Version 12.2.1.4.0 and laterInformation in this document applies to any platform.
Symptoms
In WebLogic Server 12.2.1.4.0, where an ADF application is running, intermittently, a stuck thread is observed. This seems to occur during high-load in production environment.
The stuck thread shows the following thread holding the lock:
"[ACTIVE] ExecuteThread: '45' for queue: 'weblogic.kernel.Default
(self-tuning)'" #167 daemon prio=5 os_prio=0 tid=0x00007ff355ed5000
nid=0x546d in Object.wait() [0x00007ff2b96d9000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:502)
at weblogic.work.ExecuteThread.waitForRequest(ExecuteThread.java:328)
- locked <0x0000000746c84e00> (a weblogic.work.ExecuteThread)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:388)
Locked ownable synchronizers:
- <0x00000007962db5a8> (a
java.util.concurrent.locks.ReentrantLock$NonfairSync)
"[STUCK] ExecuteThread: '44' for queue: 'weblogic.kernel.Default
(self-tuning)'" #166 daemon prio=1 os_prio=0 tid=0x00007ff355ed3800
nid=0x546c waiting on condition [0x00007ff2b97d8000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000007962db5a8> (a
java.util.concurrent.locks.ReentrantLock$NonfairSync)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:870)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1199)
at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:209)
at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:285)
at oracle.adf.model.dcframe.DataControlFrameImpl.lock(DataControlFrameImpl.java:565)
at oracle.adf.model.BindingContext.setCurrentFrame(BindingContext.java:3049)
at oracle.adf.model.BindingContext.getCurrentFrame(BindingContext.java:2955)
at oracle.adf.model.BindingRequestHandler.beginRequest(BindingRequestHandler.java:205)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:196)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:78)
at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:105)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain$1.call(TrinidadFilterImpl.java:591)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain$1.call(TrinidadFilterImpl.java:587)
Workaround
A temporary workaround is to restart the managed server. But it is only a matter of time before it hangs again.
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 |