PQ69610: IF A RESOURCE FAILS DURING AN XA_END CALL A SPURIOUS RETRY THREAD IS SPAWNED. SUPERCEDES APAR PQ67409.

 A fix is available

4.0.6: WebSphere Application Server Version 4.0 Fix Pack 6



APAR status
Closed as program error.

Error description
If a Resource Manager fails before or during an xa_end call,
an XAER_RMFAIL exception is received by WAS.  At this time
WAS incorrectly spawns a retry thread to abort the TX. This
thread keeps retrying the failed xa_end call after it has
issued an Tx rollback.

What WAS should do is ignore the resource failure, relying on
the RM to do a local Tx rollback of the un-prepared Tx when it
the Tx.
Local fix Problem summary
****************************************************************
* USERS AFFECTED: WebSphere Application Server users of        *
*                 2 phase commit transactions.                 *
****************************************************************
* PROBLEM DESCRIPTION: If a resource manager fails and throws  *
*                      a XAER_RMFAIL on an xa_end call, then   *
*                      a retry thread is incorrectly spawned.  *
*                      The transaction should be locally       *
*                      aborted.                                *
****************************************************************
* RECOMMENDATION:                                              *
****************************************************************
This APAR supersedes 
PQ67409 and implements the same logic as
well as improving the recovery logic when a XAER_RMFAIL is
received during an xa_end call to a resource manager.
APAR 
PQ67409 implements the following changes:
The v4.0 transaction manager currently does not handle stale
connections.  If a network failure occurs with in-flight
transactions (2PC), the transaction manager is currently not
able to roll back the resource manager.  It tries once and
receives a XAER_RMFAIL.  It then retries the rollback, but
fails with XAER_PROTO.
The solution is to re-instate the stale connection and then
retry.
Also the reconnect to RM logic must throw a TRANSIENT exception
if the RM is not yet available on the retry. The retry will then
be done again after a short wait.
Problem conclusion
Fixed rollback logic in JTAXAResourceImpl to handle the
RMFAIL/PROTO exceptions thrown during xa_end.
Temporary fix
PQ69610
Comments
APAR information
APAR number PQ69610
Reported component name WAS BASE 5.0
Reported component ID 5630A3600
Reported release 400
Status CLOSED PER
PE NoPE
HIPER NoHIPER
Submitted date 2003-01-08
Closed date 2003-02-06
Last modified date 2003-02-06

APAR is sysrouted FROM one or more of the following:

APAR is sysrouted TO one or more of the following:

Modules/Macros
JTAXARI          

SRLS

Fix information
Fixed component name WEBSPHERE AE NT
Fixed component ID 5630A2201

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 #: PQ69610
IBM Group: Software Group
Modified date: Feb 6, 2003