PQ52182: PERFORMANCE BOTTLENECK IN COM.IBM.EJS.JTS.JTS.PROXY.ISIMPURE

APAR status
Closed as program error.

Error description
There is a performance bottleneck in the JTS code.  Initial
investigation suggests that the call to Proxy.isImpure(),
which occurs during the processing of a number of functions
on CoordinatorImpl, is unnecessary and is a hang-over from
the Encina Tran support for subtransactions, which are not
supported in J2EE.
The code where the bottleneck is being seen is in
com.ibm.ejs.jts.jts.Proxy.isImpure.  There's been an instance
where this method has been a bottleneck for approximately
half the threads in a process.
Here's a stack frame. It has more than one call path.
.
 com.ibm.ejs.jts.jts.Proxy.isImpure in Proxy.java native=false
 com.ibm.ejs.jts.jts.CoordinatorImpl.pure in CoordinatorImpl.
   java native=false
 com.ibm.ejs.jts.jts.CoordinatorImpl.t in CoordinatorImpl.
   java native=false
 com.ibm.ejs.jts.jts.CoordinatorImpl.is_same_transaction in
   CoordinatorImpl.java native=false
 com.ibm.ejs.cm.pool.ConnectO.enlist in ConnectO.java
   native=false
 com.ibm.ejs.cm.pool.ConnectO.enlist in ConnectO.java
   native=false
 com.ibm.ejs.cm.pool.ConnectO.preInvoke in ConnectO.java
   native=false
 com.ibm.ejs.cm.proxy.Proxy.__preInvoke in Proxy.java
   native=false
 com.ibm.ejs.cm.proxy.StatementProxy.executeQueryCommon in
   StatementProxy.java native=false
 com.ibm.ejs.container.EJSHome.activateBean in EJSHome.java
   native=false
defect 111487
Local fix Problem summary
****************************************************************
* USERS AFFECTED: All WebSphere Application Server users of    *
*                 4.0 and Java Transaction Services.           *
****************************************************************
* PROBLEM DESCRIPTION: Performance bottleneck in the JTS code  *
*                      related to Proxy.isImpure().            *
****************************************************************
* RECOMMENDATION:                                              *
****************************************************************
Methods Proxy.isImpure and Proxy.somethingWasImpure do not
need to be 'synchronized'.
Problem conclusion
Code has been changed in the following:
com/ibm/ejs/jts/jts/Proxy.java
Temporary fix Comments
APAR information
APAR number PQ52182
Reported component name WEBSPHERE AE AI
Reported component ID 5630A2200
Reported release 400
Status CLOSED PER
PE NoPE
HIPER NoHIPER
Submitted date 2001-09-06
Closed date 2001-09-11
Last modified date 2001-09-11

APAR is sysrouted FROM one or more of the following:

APAR is sysrouted TO one or more of the following:

Modules/Macros

Fix information
Fixed component name WEBSPHERE AE AI
Fixed component ID 5630A2200

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 #: PQ52182
IBM Group: Software Group
Modified date: Sep 11, 2001