My Oracle Support Banner

XA_RBPROTO error Calling xa_end(TMFAILl) after xa_end(SUSPEND) (Doc ID 1115683.1)

Last updated on FEBRUARY 03, 2019

Applies to:

Oracle Server - Enterprise Edition - Version: to - Release: 10.2 to 11.2
Information in this document applies to any platform.


Before invoking xa_end(TMFAIL) through the resource adapter,
WebLogic invokes xa_end(TMSUSPEND), to suspend the transaction branch.
If a transaction branch is in a suspended state, when xa_end(TMFAIL) is
invoked on the Oracle XA interface, Oracle reports a protocol error.
This sequence should be valid, according to the XA specification,

The call to xa_end(TMSUSPEND) before calling xa_end(TMFAIL) was deliberately
added to WebLogic as part of patch (CR211194) and fixes a memory leak with


Upgrade of Weblogic to versions where patch (CR211194) is implemented or
any other XA application calling xa_end(TMFAILl) after a xa_end(SUSPEND).


To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.