UIM - Deadlocks Caused By Concurrent Disconnections on ConcurrencyManager.releaseDeferredLock(ConcurrencyManager.java:445)
(Doc ID 2405016.1)
Last updated on SEPTEMBER 04, 2024
Applies to:
Oracle Communications Unified Inventory Management - Version 7.3.4.0.0 and laterInformation in this document applies to any platform.
Symptoms
Since the upgrade to UIM 7.3.4.15 in production we did ran into 3 instances were one of our two server was no longer processing orders and had to be rebooted to resume the processing. The issue led to delay in the processing and a significant degradation of service. Initial investigation is leading toward a series of dead lock on the ConcurrencyManager.
Initial Stuck Thread is due to ‘ConcurrencyManager.releaseDeferredLock’ which tries to release write locks and consecutive threads are stuck due to failure in obtaining read lock.
"[STUCK] ExecuteThread: '18' for queue: 'weblogic.kernel.Default (self-tuning)'" daemon prio=10 tid=0x00007f2a30644000 nid=0x6eaa sleeping[0x00007f2a4cbb2000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at org.eclipse.persistence.internal.helper.ConcurrencyManager.releaseDeferredLock(ConcurrencyManager.java:445)
at org.eclipse.persistence.internal.identitymaps.CacheKey.releaseDeferredLock(CacheKey.java:458)
at org.eclipse.persistence.internal.helper.WriteLockManager.releaseAllAcquiredLocks(WriteLockManager.java:477)
at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.mergeChangesIntoParent(UnitOfWorkImpl.java:3310)
at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.mergeChangesIntoParent(RepeatableWriteUnitOfWork.java:376)
at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.mergeClonesAfterCompletion(UnitOfWorkImpl.java:3412)
at org.eclipse.persistence.transaction.AbstractSynchronizationListener.afterCompletion(AbstractSynchronizationListener.java:217)
at org.eclipse.persistence.transaction.JTASynchronizationListener.afterCompletion(JTASynchronizationListener.java:79)
at weblogic.transaction.internal.ServerSCInfo.doAfterCompletion(ServerSCInfo.java:1182)
at weblogic.transaction.internal.ServerSCInfo.callAfterCompletions(ServerSCInfo.java:1155)
- locked (a weblogic.transaction.internal.ServerSCInfo)
at weblogic.transaction.internal.ServerTransactionImpl.callAfterCompletions(ServerTransactionImpl.java:3191)
at weblogic.transaction.internal.ServerTransactionImpl.afterCommittedStateHousekeeping(ServerTransactionImpl.java:3089)
at weblogic.transaction.internal.ServerTransactionImpl.setCommitted(ServerTransactionImpl.java:3134)
at weblogic.transaction.internal.ServerTransactionImpl.globalRetryCommit(ServerTransactionImpl.java:2911)
at weblogic.transaction.internal.ServerTransactionImpl.globalCommit(ServerTransactionImpl.java:2821)
at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:312)
at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:260)
at org.glassfish.transaction.TransactionManagerImplCommon.commit(TransactionManagerImplCommon.java:571)
at org.glassfish.transaction.TransactionManagerImplCommon.commit(TransactionManagerImplCommon.java:565)
at oracle.communications.platform.webservice.framework.adapter.AdapterRoot.commit(AdapterRoot.java:93)
at oracle.communications.inventory.webservice.framework.InventoryAdapterRoot.commitOrRollback(Unknown Source)
:::::::::::::
at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5375)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:553)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:311)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:263)
Environment
------------------
UIM 7.3.4.15
FMW 12.1.3.0.0
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 |