APAR status
Closed as program error.
Error description
Problem description:
After upgrading to cumulative fix WebSphere Application Server
5.1.1.6, WebSphere Application Server 5.0.2.12 or WebSphere
Application Server 5.0.2.13, memory leak has been found in
Invocation Cache which leads to OutOfMemory situation.
From the heapdump analysis it has been found that total number
of com/ibm/ws/webcontainer/srt/WebAppInvoker live objects are
more than expected. Expected max number of this objects can be
calculated as per below...
If,
P = Thread pool Size
C = invocation cache size
Then, the max number of Cached WebAppInvoker should be the
following:
(2 * P + 1) * C
Local fix
LOCAL FIX 1:
Temporary work around 1:
Setting invocation cache size to 0 will disable invocation cache
functionality and there will be no more caching of WebAppInvoker
objects. This can be set as follows:
(1) In the administrative console, click the application server.
(2) Click Process Definition under Additional Properties.
(3) Click the Java? Virtual Machine under Additional Properties.
(4) Add the following argument in the Generic JVM? arguments:
-DinvocationCacheSize=0
(5) Click Apply to ensure that the changes are saved.
(6) Stop and restart the application server.
LOCAL FIX 2:
If invocation cache size can not be set to 0, this issue can be
avoided by setting the minimum thread pool size the same as the
maximum thread pool size and setting growable to false. To make
these changes, perform the following:
(1) In the administrative console, click the application server.
(2) Click Web Container under Additional Properties.
(3) Click Thread pool under Additional Properties.
(4) Change Minimum size same as Maximum size.
(5) Select Is Growable.
(6) Click Apply to ensure that the changes are saved.
(7) Stop and restart the application server.
Problem summary
****************************************************************
* USERS AFFECTED: WebSphere Application Servers at release *
* level 5.0.2.12, 5.0.2.13, and 5.1.1.6 *
* *
* *
****************************************************************
* PROBLEM DESCRIPTION: Invocation cache causes a memory leak *
* and OutofMemory exception *
****************************************************************
* RECOMMENDATION: Normally, application server should set *
* web container thread pool as the follow: *
* minimumThread = maximumThread and *
* isGrowable = false. *
* This setting will maintain a stable thread *
* pool and prevent possible memory leak *
* associated thread creation/destuction. *
****************************************************************
Invocation caches are not released when associated transport
threads are being destroyed.
Hidden handles that hold up InvocationCache objects prevent
JVM garbage collecting of an InvocationCache instance and its
cached objects when a thread is being destroyed.
This problem is due to
PK05682 which makes an InvocationCache
associated with a thread.
Problem conclusion
This fix removes hidden handles that hold up InvocationChech.
It also adds a thread pool listener that monitors thread
activities with the pool. Upon a thread being destroyed,
its invocation cache will be invalidated and released.
Thus it prevents memory leak from invocation cache instances.
After this fix, you can use this formula to calculate how many
WebAppInvoker (cached objects) should be in a heap:
#WebAppInvoker <= #Thread * InvocationCacheSize
This fix will be in 5.0.2.14 and 5.1.1.7 fixpacks. Please
check the following link for their release dates:
http://www-1.ibm.com/support/docview.wss?rs=180&uid=swg27004980
Temporary fix
*********
* HIPER *
*********
ZE fix Error
PK15035 2005/11/10
Note that this ZE is for the iFix only. PK12027 is correct
as included in the fixpacks.
Comments
APAR information |
APAR number |
PK12027 |
Reported component name |
WAS BASE 5.0 |
Reported component ID |
5630A3600 |
Reported release |
10A |
Status |
CLOSED PER |
PE |
NoPE |
HIPER |
YesHIPER |
Special Attention |
NoSpecatt |
Submitted date |
2005-09-19 |
Closed date |
2005-09-29 |
Last modified date |
2006-04-27 |
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
PK16552
Modules/Macros
Publications Referenced
|
Fix information |
Fixed component name |
WAS BASE 5.0 |
Fixed component ID |
5630A3600 |
Applicable component levels |
R003 PSY |
UP |
R00A PSY |
UP |
R00H PSY |
UP |
R00I PSY |
UP |
R00P PSY |
UP |
R00S PSY |
UP |
R00W PSY |
UP |
R103 PSY |
UP |
R10A PSY |
UP |
R10H PSY |
UP |
R10I PSY |
UP |
R10P PSY |
UP |
R10S PSY |
UP |
R10W PSY |
UP |
|