PQ62370: STORAGE LEAK IN RMI CLIENT CODE LEAVING 128K STORAGE ALLOCATED

 A fix may be available

Obtain the fix for this APAR



APAR status
Closed as program error.

Error description
A servlet attaches many threads which invoke EJBs using
RMI. Each thread runs a set of requests and then exits. The
first RMI request on a thread generates a control block
structure which includes a 128 kilobyte communications buffer
and several other control blocks. These buffers and control
blocks are not cleaned up when the thread terminates. The
application eventually exhausts storage and crashes.
Local fix
The problem can be avoided if the application pools its java
threads. That is, modify the application to not terminate the
java threads. Instead, once a thread becomes idle, put it on a
queue of free threads waiting for more work. On the next
request, dispatch one of the free threads to complete the
request instead of creating a new one. By doing so, the large
and necessary control block structure can be reused.
Problem summary
****************************************************************
* USERS AFFECTED: All users of WebSphere Application Server    *
*                 V4.0.1 for z/OS and OS/390                   *
****************************************************************
* PROBLEM DESCRIPTION: There exists a storage leak in RMI      *
*                      client code which results in 128k of    *
*                      storage being left allocated.           *
****************************************************************
* RECOMMENDATION:                                              *
****************************************************************
A servlet attaches many threads which invoke EJBs using
RMI. Each thread runs a set of requests and then exits. The
first RMI request on a thread generates a control block
structure which includes a 128k communications buffer and
several other control blocks. These buffers and control blocks
are not cleaned up when the thread terminates. The application
eventually exhausts storage.
Problem conclusion
Method boss_thread_destructor()in modules bbo3tcb.cpp has been
changed to free the communication buffer and other thread
related control blocks. Also, method
BBOT_TransactionCurrentRep_SR::cleanupThread() in module
bbottscu.cpp has been modified to free up several internal
control blocks.

APAR PQ62370 is associated with SERVICE LEVEL W401087 of
WebSphere Application Server V4.0.1 for z/OS and OS/390.
Temporary fix
*********
* HIPER *
*********
NONE
Comments
APAR information
APAR number PQ62370
Reported component name WASKBASE
Reported component ID 5655A9801
Reported release 401
Status CLOSED PER
PE NoPE
HIPER YesHIPER
Submitted date 2002-06-18
Closed date 2002-07-26
Last modified date 2002-09-27

APAR is sysrouted FROM one or more of the following:

APAR is sysrouted TO one or more of the following:
UQ68444

Modules/Macros
BBOTTSCU BBOUBINF BBO3TCB      

Fix information
Fixed component name WASKBASE
Fixed component ID 5655A9801

Applicable component levels
R401 PSY UQ68444    UP02/08/01 P F207

  Fix is available
Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.


Document Information


Product categories: Software > Application Servers > Distributed Application & Web Servers > WebSphere Application Server for z/OS
Operating system(s):
Software version: 401
Software edition:
Reference #: PQ62370
IBM Group: Software Group
Modified date: Sep 27, 2002