APAR status
Closed as program error.
Error description
When the dmgr console hangs, and the thread dumps show the
following deadlock:
at java.util.Hashtable.get(Hashtable.java:314)
at javax.management.ObjectName.equals(ObjectName.java:315)
at java.util.HashSet.add(HashSet.java:158)
at java.util.HashSet.<init>(HashSet.java:81)
- locked <e8b173a8> (a com.tivoli.jmx.MapAdapter)
at com.tivoli.jmx.MBeanServerImpl.queryNames(MBeanServerImpl.ja
at com.ibm.ws.console.core.mbean.MBeanHelper.getMBean(MBeanHelp
The only way to recover is by recycling the dmgr. This happens
because the JMX code has a defect.
Local fix
Keywords: java level dead lock
Problem summary
****************************************************************
* USERS AFFECTED: Admin console users deleting clusters. *
****************************************************************
* PROBLEM DESCRIPTION: This arises when attempting to delete *
* clusters. Expand the "Servers" and *
* choose "cluster" then check *
* cluster to delete and press "delete" *
* and it will hang. *
****************************************************************
* RECOMMENDATION: *
****************************************************************
This is a case of concurrent access to the
internal MBean list structure. There are two
threads in the console code that are both
attempting to traverse the MBean list at the
same time. These threads depend on each
other and are deadlocked because of a fairly
subtle interaction in an SMP environment
access a common hash table.
Problem conclusion
Clone the hashtable so each thread will have separate lookup
access and eliminate the deadlock.
Temporary fix
Found a problem in Tivoli TMX4J source code prereq.tmx4j
component that is a binary deliverable from Tivoli. Two threads
are testing JMX object names for equality within one hash table
with that of the other objects hash table owned by second thread
resulting in deadlock. The fix will use a clone of the key
properties hashtable of the object name it's testing for
equality to eliminate the potential for deadlock situation.
Comments
APAR information |
APAR number |
PQ79144 |
Reported component name |
WAS BASE 5.0 |
Reported component ID |
5630A3600 |
Reported release |
00S |
Status |
CLOSED PER |
PE |
NoPE |
HIPER |
NoHIPER |
Special Attention |
NoSpecatt |
Submitted date |
2003-10-02 |
Closed date |
2004-04-20 |
Last modified date |
2004-04-20 |
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
PQ94354
Modules/Macros
Publications Referenced
Applicable component levels |
R00S PSY |
UP |
R00W PSY |
UP |
R10S PSY |
UP |
R10W PSY |
UP |
|