Fix (APAR): PK34305 Status: Fix Release: 5.1.1.9,5.1.1.8,5.1.1.7,5.1.1.12,5.1.1.11,5.1.1.10 Operating System: AIX,HP-UX,Linux,Linux pSeries,Linux Red Hat - pSeries,Solaris,Windows Supersedes Fixes: CMVC Defect: PK34305 Byte size of APAR: 52436 Date: 2006-12-01 Abstract: Connection Manager has problem when an application requests a connection and no transaction context is present Description/symptom of problem: PK34305 resolves the following problem: ERROR DESCRIPTION: There are 2 problems that can be seen in the trace,,, we have a null pointer exception see stack below [11/7/06 14:13:40:934 UTC] cd9f510 LocalTransact d afterCompletionCode for datasource jdbc/TeamConnectDatasource: caught Exception java.lang.NullPointerException at com.ibm.ejs.j2c.poolmanager.PoolManager.release(PoolManager.java :1333) at com.ibm.ejs.j2c.MCWrapper.releaseToPoolManager(MCWrapper.java:18 12) at com.ibm.ejs.j2c.LocalTransactionWrapper.afterCompletionCode(Loca lTransac tionWrapper.java:1092) at com.ibm.ejs.j2c.LocalTransactionWrapper.afterCompletion(LocalTra nsaction Wrapper.java:1026) The second error is as follows: [11/7/06 14:15:14:212 UTC] 5fa7b510 LocalTranCoor E WLTC0014E: Cannot enlist Synchronization. LocalTransactionContainment is completing or completed. [11/7/06 14:15:14:230 UTC] 5fa7b510 LocalTranCoor d Cannot enlist Synchronization. LocalTransactionCoordinator is completing or completed. [11/7/06 14:15:14:230 UTC] 5fa7b510 SystemErr R java.lang.IllegalStateException: Cannot enlist Synchronization. LocalTransactionCoordinator is completing or completed. [11/7/06 14:15:14:230 UTC] 5fa7b510 SystemErr R at com.ibm.ws.LocalTransaction.LocalTranCoordImpl.enlistSynchroniza tion(Loc alTranCoordImpl.java:597) [11/7/06 14:15:14:231 UTC] 5fa7b510 SystemErr R at com.ibm.ejs.j2c.LocalTransactionWrapper.addSync(LocalTransaction Wrapper. java:948) [11/7/06 14:15:14:231 UTC] 5fa7b510 SystemErr R at com.ibm.ejs.j2c.ConnectionManager.initializeForUOW(ConnectionMan ager.jav a:1031) The thing that both these errors have in common is that they involve the same transaction wrapper. The first error is causing the second error in this case. The problem here is that the customers application is requesting a connection before starting a transaction,,, usually a transaction is started before a connection is requested,, but in this case a connection is obtained and the transaction is started later. The pool manager code was fixed in later releases to handle this seneario but for some reason was not fixed in 51X,, so defect 189290 was back ported to the 51x release. LOCAL FIX: The pool manager code was fixed in later releases to handle this seneario but for some reason was not fixed in 51X,, so defect 189290 was back ported to the 51x release. PROBLEM SUMMARY USERS AFFECTED: Websphere Application Server version 5.1 users. PROBLEM DESCRIPTION: Connection Manager has problem when an application requests a connection and no transaction context is present RECOMMENDATION: None When an application is using user threads and requesting a connection without first starting a transaction the poolmanager code will get an error when attempting to release the connection. PROBLEM CONCLUSION: The pool manager code was fixed to handle the seneario where a connection is obtained and a transaction is started at a later time. This fix was only needed for the version 5.1 release as this problem was already fixed in version 6. The fix for this APAR is currently targeted for inclusion in cumulative fix 5.1.1.14. Please refer to the recommended updates page for delivery information: http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980 Directions to apply fix: NOTE: Choose the: 1) Release the fix applies to 2) The Editions that apply 3) Delete the Editions & Methods that do not apply and this Note Fix applies to Editions: Release: 5.0 5.1 ___ ___ Application Server (Express or BASE) ___ Enterprise Edition (DD) ___ ___ Network Deployment (ND) ___ ___ Edge Components ___ ___ Developers Edition ___ ___ Tools ___ WebSphere Business Integration Server Foundation (WBISF) Install Fix to: Method: __ Application Server Nodes __ Deployment Manager Nodes __ Both NOTE: The user must: * Have Administrative rights in Windows, or be the Actual Root User in a UNIX environments. * Be logged in with the same authority level when unpacking a fix, fix pack or refresh pack. The Update Installer can be downloaded from the following link: http://www.ibm.com/support/docview.wss?rs=180&uid=swg21205991 The Update Installer for V5.0 does not have a maintenance directory. It uses fixpacks and fixes as the location of the unpacked files. 1) Copy PKxxxxx.jar file directly to the maintenance directory 2) Shutdown WebSphere Manually execute setupCmdLine.bat in Windows or . ./setupCmdLine.sh in Unix from the WebSphere instance that maintenance is being applied to. 3) Launch Update Installer 4) Enter the installation location of the WebSphere product you want to update. 5) Select the "Install maintenance package" operation. 6) Enter the file name of the maintenance package to install (PKxxxxx.jar file which was copied in the maintenance directory). The V5.0 and V5.1 fix packs and fixes are unpacked as .jar files and should be unpacked into fixpacks or fixes directory. 7) Install the maintenance package. 8) Restart WebSphere Directions to remove fix: NOTE: * The user must have Administrative rights in Windows, or be the Actual Root User in a UNIX environments. * FIXES MUST BE REMOVED IN THE ORDER THEY WERE APPLIED * DO NOT REMOVE A FIX UNLESS ALL FIXES APPLIED AFTER IT HAVE FIRST BEEN REMOVED * YOU MAY REAPPLY ANY REMOVED FIX Example: If your system has fix1, fix2, and fix3 applied in that order and fix2 is to be removed, fix3 must be removed first, fix2 removed, and fix3 re-applied. 1) Shutdown WebSphere Manually execute setupCmdLine.bat in Windows or . ./setupCmdLine.sh in Unix from the WebSphere instance that uninstall is being run against. 2) Start Update Installer 3) Enter the installation location of the WebSphere product you want to remove the fix. 4) Select "Uninstall maintenance package" operation. 5) Enter the file name of the maintenance package to uninstall (PKxxxxx.jar). 6) UnInstall maintenance package. 7) Restart WebSphere Directions to re-apply fix: 1) Shutdown WebSphere. 2) Follow the Fix instructions to apply the fix. 3) Restart WebSphere. Additional Information: