Fixes are available
APAR status
Closed as program error.
Error description
In very rare cases, a thread that has acquired one of ITCAM internal locks seems to be abruptly terminated (instead of gracefully terminating) while holding on to the lock. This causes the lock not to be released and other threads waiting for the lock are hung. A thread dump (e.g. javacore from a IBM JVM) will indicate that application threads are waiting for a thread that has a stack trace as follows: at java/lang/Object.wait(Object.java:167(Compiled Code)) at com/ibm/tivoli/itcam/toolkit/ai/lockmanagement/LockAcquisitionRe quest.waitForLock(LockAcquisitionRequest.java:174) at com/ibm/tivoli/itcam/toolkit/ai/lockmanagement/Lock.lockAcquire( Lock.java:1071(Compiled Code)) at com/ibm/tivoli/itcam/toolkit/ai/lockmanagement/Lock.obtainExclus ive(Lock.java:443(Compiled Code)) This thread is waiting to acquire a lock that is locked by a thread that is no longer present in the thread dump, which indicates that it has terminated.
Local fix
Problem summary
**************************************************************** * PROBLEM DESCRIPTION: * * In very rare cases, an application thread holding an internal * ITCAM lock has seen to suddenly die without releasing the * lock. In such cases, other application threads waiting for * the lock hang indefinitely. * * The application threads that are hung show stack trace * similar to the following: * * at java/lang/Object.wait(Object.java:167(Compiled Code)) * at com/ibm/tivoli/itcam/toolkit/ai/lockmanagement/LockAcquisitionRe quest.waitForLock(LockAcquisitionRequest.java:174) * at com/ibm/tivoli/itcam/toolkit/ai/lockmanagement/Lock.lockAcquire( Lock.java:1071(Compiled Code)) * at com/ibm/tivoli/itcam/toolkit/ai/lockmanagement/Lock.obtainExclus ive(Lock.java:443(Compiled Code)) * ****************************************************************
Problem conclusion
This APAR introduces a check mechanism where by threads waiting for a lock for more than 60 seconds will check if the thread holding the lock is still alive. If alive, it will print out the stack trace of the holding threads. If the thread holding the exclusive lock is no longer alive, the lock is released so that other waiting threads can proceed with their execution. Also, the following property has been added to control the amount of waiting time (in milliseconds): am.camtoolkit.gpe.runtime.exclusivelock.check.time If this property is set to zero, then no lock checking will be done. The fix for this APAR is contained in the following maintenance packages: | interim fix | 7.1.0.3_TIV_ITCAMAD_IF0008
Temporary fix
Comments
APAR Information
APAR number
PM84487
Reported component name
TCAM AD WAS DC
Reported component ID
5724Y92DC
Reported release
710
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2013-03-11
Closed date
2013-09-28
Last modified date
2013-09-28
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
TCAM AD WAS DC
Fixed component ID
5724Y92DC
Applicable component levels
R710 PSY
UP
[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SS3PGL","label":"Tivoli Composite Application Manager for WebSphere"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"710","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
27 July 2021