APAR status
Closed as program error.
Error description
The application makes a DB getConnection call that results in a
SQLException. This SQLException is not getting linked to a
StaleConnectionException (SCE) before getting wrappered by a
ResourceException.
If the application code is written to catch a SCE and retry
the connection based on that, it will not work since no SCE is
there to be caught.
A J2CA0046E was logged; the root cause (the linked exception)
was a com.ibm.db2.jcc.c.SqlException: SQL30081N
The customer's db server was stopped so that the getConnection
fails with a SQL30081, error code of -30,081. The following is
also logged when this occurs:
com.ibm.ws.exception.WsException: DSRA8100E: Unable to get a
XAConnection from the DataSource.
.
The DataStoreAdapterException code throws the J2CA0046E
message. But it does not produce a SCE for the application to
process.
.
Keywords: DB connection StaleConnectionException
catch SQLException getConnection datasource XA J2CA0046E
DSRA8100E XAConnection RRA RAR
Local fix
Catch a ResourceAllocationException rather than
StaleConnectionException
Problem summary
****************************************************************
* USERS AFFECTED: WebSphere Application Server users of JDBC *
* Connections. *
****************************************************************
* PROBLEM DESCRIPTION: WebSphere Application Server does not *
* throw a StaleConnectionException if *
* the error occurs while obtaining a *
* connection from the database. *
****************************************************************
* RECOMMENDATION: *
****************************************************************
WebSphere Application Server was not checking the list of
SQLExceptions that are known to be Stale Connection Exceptions
during the creation of a new connection to the database.
This error only occurs in a narrow timing window where the
database goes down after WebSphere Application Server has
issued the request to the JDBC driver, but that request has
not created the connection.
Problem conclusion
Check known exceptions on return from getPooledConnection.
Temporary fix
Sent test fix to customer.
Comments
APAR information |
APAR number |
PQ88198 |
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 |
2004-04-29 |
Closed date |
2004-07-23 |
Last modified date |
2004-07-23 |
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Modules/Macros
Publications Referenced
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 |
|