Fixes are available
6.1.0.37: Java SDK 1.5 SR12 FP3 Cumulative Fix for WebSphere
7.0.0.17: Java SDK 1.6 SR9 FP1 Cumulative Fix for WebSphere Application Server
6.1.0.47: WebSphere Application Server V6.1 Fix Pack 47
7.0.0.27: Java SDK 1.6 SR13 FP2 Cumulative Fix for WebSphere Application Server
6.1.0.39: Java SDK 1.5 SR12 FP4 Cumulative Fix for WebSphere Application Server
6.1.0.41: Java SDK 1.5 SR12 FP5 Cumulative Fix for WebSphere Application Server
6.1.0.43: Java SDK 1.5 SR13 Cumulative Fix for WebSphere Application Server
6.1.0.45: Java SDK 1.5 SR14 Cumulative Fix for WebSphere Application Server
6.1.0.47: Java SDK 1.5 SR16 Cumulative Fix for WebSphere Application Server
7.0.0.19: Java SDK 1.6 SR9 FP2 Cumulative Fix for WebSphere Application Server
7.0.0.21: Java SDK 1.6 SR9 FP2 Cumulative Fix for WebSphere
7.0.0.23: Java SDK 1.6 SR10 FP1 Cumulative Fix for WebSphere
7.0.0.25: Java SDK 1.6 SR11 Cumulative Fix for WebSphere Application Server
7.0.0.27: Java SDK 1.6 SR12 Cumulative Fix for WebSphere Application Server
7.0.0.29: Java SDK 1.6 SR13 FP2 Cumulative Fix for WebSphere Application Server
7.0.0.45: Java SDK 1.6 SR16 FP60 Cumulative Fix for WebSphere Application Server
7.0.0.31: Java SDK 1.6 SR15 Cumulative Fix for WebSphere Application Server
7.0.0.35: Java SDK 1.6 SR16 FP1 Cumulative Fix for WebSphere Application Server
7.0.0.37: Java SDK 1.6 SR16 FP3 Cumulative Fix for WebSphere Application Server
7.0.0.39: Java SDK 1.6 SR16 FP7 Cumulative Fix for WebSphere Application Server
7.0.0.41: Java SDK 1.6 SR16 FP20 Cumulative Fix for WebSphere Application Server
7.0.0.43: Java SDK 1.6 SR16 FP41 Cumulative Fix for WebSphere Application Server
APAR status
Closed as program error.
Error description
Multiple threads may lock on the Class.forName code when running a JAX-RPC application. These locks may reduce overall system throughput. Here is an example stack that may be seen within a javacore file: Java callstack: at java/lang/Class.forNameImpl(Native Method) at java/lang/Class.forName(Class.java:169) at com/ibm/ws/webservices/engine/utils/ClassUtils$2.run(ClassUtils. java: 234) at java/security/AccessController.doPrivileged(AccessController.jav a:202 ) at com/ibm/ws/security/util/AccessController.doPrivileged(AccessCon troll er.java:61) at com/ibm/ws/webservices/engine/utils/ClassUtils.loadClass(ClassUt ils.j ava:210) at com/ibm/ws/webservices/engine/utils/ClassUtils.forName(ClassUtil s.jav a:136) at com/ibm/ws/webservices/engine/encoding/ser/BaseSerializerFactory $getS erializerMethodPRIV.run(BaseSerializerFactory.java:369) at java/security/AccessController.doPrivileged(AccessController.jav a:202 ) at com/ibm/ws/security/util/AccessController.doPrivileged(AccessCon troll er.java:61) at com/ibm/ws/webservices/engine/encoding/ser/BaseSerializerFactory .getS erializerMethod(BaseSerializerFactory.java:249) These threads are all trying to load a non-existent class "java/lang/String_Helper".
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: IBM WebSphere Application Server users or * * administrators of JAX-RPC applications * **************************************************************** * PROBLEM DESCRIPTION: Lock contention may occur with a * * JAX-RPC application when the * * BaseSerializerFactory uses * * Class.forName. * **************************************************************** * RECOMMENDATION: Install a fix pack containing this APAR. * **************************************************************** Multiple threads may lock on the Class.forName code when running a JAX-RPC application. These locks may reduce overall system throughput. Here is an example stack that may be seen within a javacore file: Java callstack: at java/lang/Class.forNameImpl(Native Method) at java/lang/Class.forName(Class.java:169) at com/ibm/ws/webservices/engine/utils/ClassUtils$2.run(ClassUtils. java: 234) at java/security/AccessController.doPrivileged(AccessController.jav a:202 ) at com/ibm/ws/security/util/AccessController.doPrivileged(AccessCon troll er.java:61) at com/ibm/ws/webservices/engine/utils/ClassUtils.loadClass(ClassUt ils.j ava:210) at com/ibm/ws/webservices/engine/utils/ClassUtils.forName(ClassUtil s.jav a:136) at com/ibm/ws/webservices/engine/encoding/ser/BaseSerializerFactory $getS erializerMethodPRIV.run(BaseSerializerFactory.java:369) at java/security/AccessController.doPrivileged(AccessController.jav a:202 ) at com/ibm/ws/security/util/AccessController.doPrivileged(AccessCon troll er.java:61) at com/ibm/ws/webservices/engine/encoding/ser/BaseSerializerFactory .getS erializerMethod(BaseSerializerFactory.java:249) These threads are all trying to load a non-existent class "java/lang/String_Helper".
Problem conclusion
The JAX-RPC runtime loads _Helper classes to assist with the serialization and deserialization of the JAX-RPC data. There are some data types (for example, java.lang.String) that do not have _Helper classes. The lock contention occurs while the JAX-RPC runtime searches for these non-existent _Helper classes. The JAX-RPC runtime is changed to avoid the _Helper class lookup for java.lang.String and other common data types. This eliminates the lock contention. The fix for this APAR is currently targeted for inclusion in fix pack 7.0.0.17 Please refer to the Recommended Updates page for delivery information: http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980
Temporary fix
Comments
APAR Information
APAR number
PM26342
Reported component name
WEBS APP SERV N
Reported component ID
5724H8800
Reported release
700
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2010-11-09
Closed date
2010-11-18
Last modified date
2010-11-18
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
WEBS APP SERV N
Fixed component ID
5724H8800
Applicable component levels
R700 PSY
UP
Document Information
Modified date:
27 October 2021