PQ74639: WEB CONTAINER THREADS ARE HUNG IN WRITELOCKS ORB CALL IF THE APPSERVER WITH THE ORB OBJECT IS STOPPED AND RESTARTED

 A fix is available

PQ74639; 4.0.7: Hanging or Lost Threads or wait on writeLock()



APAR status
Closed as program error.

Error description
Customer is using StatefulSessionBeans to communicate to EJB
The ORB communication with the EJB halts.  The user must
stop and restart the jvm to get the communication working
again.
   This problem can affect the AdminServer or the AppServer
since each of these jvm processes does ORB communication.
The external symptom is that the AppServer or AdminServer
jvm process appears to be hung, in the sense that it does
not complete ORB communication.
   If it is the AdminServer process that is experiencing
the symptom will also include that the adminclient, that is,
the AdminConsole does not start and that wscp will not
be able to connect to the AdminServer.
   The internal symptoms is that the java thread dump
will show two or more threads "blocked" in ORB calls.  By
blocked, what is meant is that the ORB call does not finish.
The threads that are typically noticed having this problem are
ORB.thread.pool threads.  The calls that are usually seen are
1. IIOPConnection.writeLock
2. IIOPConnection.send
Here is an example of the writeLock
    "ORB.thread.pool:80" (TID:0x3187FBE8,
sys_thread_t:0x3CBBBF18, state:CW, native ID:0x614C) prio=5
 at java.lang.Object.wait(Native Method)
 at java.lang.Object.wait(Object.java(Compiled Code))
 at com.ibm.rmi.util.Condition.wait(Condition.java(Compiled
Code))
 at com.ibm.CORBA.iiop.IIOPConnection.writeLock(IIOPConnection.
 java(Compiled Code))
 at com.ibm.CORBA.iiop.IIOPConnection.writeLock(IIOPConnection.
 java:1381)
.
The hang in send can also be caused if the Orb timeout is
infinite.  One might also want to apply 
PQ70054 if not already
included in the WAS PTF that is applied.
.
Here is an example of a thread with the problem in send.
"ORB.thread.pool:2" daemon prio=5 tid=0x7eeb20 nid=0x16 waiting
on monitor  0xecd80000..0xecd819e0
 at java.lang.Object.wait(Native Method)
 at java.lang.Object.wait(Object.java:415)
 at com.ibm.rmi.util.Condition.wait(Condition.java:32)
 at
com.ibm.CORBA.iiop.IIOPConnection.send(IIOPConnection.java:1501)
 at
com.ibm.CORBA.iiop.ClientRequestImpl.invoke(ClientRequestImpl.ja
va:522)
Local fix Problem summary
****************************************************************
* USERS AFFECTED: WebSphere Application Server Developers      *
*                 using the ORB for communications.            *
****************************************************************
* PROBLEM DESCRIPTION: ORB worker threads stay around and do   *
*                      not go away. Sometimes they seem to     *
*                      hang.                                   *
****************************************************************
* RECOMMENDATION:                                              *
****************************************************************
When WriteLock() receives the state of ABORT, the lock is not
released correctly, causing the hanging symptom.
Problem conclusion
Move the ABORT: to the same path as CLOSED: to properly report
the ABORT and release the lock.
Temporary fix Comments
APAR information
APAR number PQ74639
Reported component name WEBSPHERE AE NT
Reported component ID 5630A2201
Reported release 400
Status CLOSED PER
PE NoPE
HIPER NoHIPER
Submitted date 2003-05-28
Closed date 2004-01-06
Last modified date 2004-01-08

APAR is sysrouted FROM one or more of the following:

APAR is sysrouted TO one or more of the following:

Modules/Macros
orb          

SRLS

Fix information

Applicable component levels
R400 PSY    UP


Document Information


Product categories: Software > Application Servers > Distributed Application & Web Servers > WebSphere Application Server > General
Operating system(s):
Software version: 400
Software edition:
Reference #: PQ74639
IBM Group: Software Group
Modified date: Jan 8, 2004