PQ73523: Setting connection autoCommit value to false doesn't work correctly in a global transaction or a local transaction

 Fixes are available

PQ73523: Setting connection autoCommit value to false does not work
5.0.2: WebSphere Application Server Version 5.0 Fix Pack 2 (Version 5.0.2)



APAR status
Closed as program error.

Error description
Setting connection autoCommit value to false doesn't work
correctly in a global transaction or a local transaction when
you use the DB2 Universal JDBC Provider Driver.

This problem happens when users use "DB2 Universal JDBC
Provider Driver" to create data sources
Local fix Problem summary
****************************************************************
* USERS AFFECTED: WebSphere Application Server users of        *
*                 version 5.0 Datasources with autocommit      *
*                 enabled.                                     *
****************************************************************
* PROBLEM DESCRIPTION: Setting connection autoCommit value     *
*                      to false doesn't work correctly in a    *
*                      global transaction or a local           *
*                      transaction when you use the DB2        *
*                      Universal JDBC Provider Driver          *
****************************************************************
* RECOMMENDATION:                                              *
****************************************************************
This problem happens when users use "DB2 Universal JDBC
Provider Driver" to create data sources.

Global transaction scenario:
When users call a connection.setAutoCommit(false) in a global
transaction, an incorrect exception "DSRA9350E:
Operation setAutoCommit is not allowed during a global
transaction." was thrown. Users should be able to call
Connection.setAutoCommit(false) in a global transaction.

Local transaction scenario:
When users call connection.setAutoCommit(false), do work to
the connection, and then call connection.setAutoCommit(false)
again on the same connection, the second setAutoCommit(false)
will commit the  work that performs before the second
setAutoCommit() call.  This behavior is the same as
native DB2 universal JDBC driver's behavior, but it is not
consistent with the behaviors when using other JDBC drivers in
WebSphere.  The correct WebSphere behavior is that the second
setAutoCommit(false) doesn't commit the
previous work.
Problem conclusion
The proper checking was done to determine the type of
transaction, user or global, and throw the exeception where
necessary.  This is a dup of internal defect 163459 .
Temporary fix Comments
APAR information
APAR number PQ73523
Reported component name WAS BASE 5.0
Reported component ID 5630A3600
Reported release 00W
Status CLOSED PER
PE NoPE
HIPER NoHIPER
Special Attention NoSpecatt
Submitted date 2003-04-24
Closed date 2003-04-29
Last modified date 2003-04-29

APAR is sysrouted FROM one or more of the following:

APAR is sysrouted TO one or more of the following:

Modules/Macros
RRA          

Publications Referenced

Fix information

Applicable component levels
R003 PSY    UP
R00A PSY    UP
R00H PSY    UP
R00I PSY    UP
R00S PSY    UP
R00W PSY    UP


Document Information


Product categories: Software > Application Servers > Distributed Application & Web Servers > WebSphere Application Server > General
Operating system(s):
Software version: 00W
Software edition:
Reference #: PQ73523
IBM Group: Software Group
Modified date: Apr 29, 2003