IIapi_xaCommit() Function—Commit an XA Transaction
The IIapi_xaCommit() function commits an XA transaction started with IIapi_xaStart(). The association between the transaction and a connection must have been dropped using IIapi_xaEnd(). The transaction state of the connection used to commit the XA transaction is not affected. The connection handle does not need to be the same as was originally associated with the XA transaction when started by IIapi_xaStart().
Generally, the XA transaction should have been prepared for two-phase commit using IIapi_xaPrepare(). If the transaction has not been prepared for two-phase commit, the transaction flag IIAPI_XA_1PC must be specified to indicate a one-phase commit operation.
This function has the following syntax:
II_VOID IIapi_xaCommit( IIAPI_XACOMMITPARM *commitParm );
typedef struct _IIAPI_XACOMMITPARM
{
IIAPI_GENPARM xc_genParm;
II_PTR xc_connHandle;
IIAPI_TRAN_ID xc_tranID;
II_ULONG xc_flags;
} IIAPI_XACOMMITPARM;
This function has the following parameters:
xc_genParm
Type: input and delayed output
xc_connHandle
Type: input
Specifies the connection handle identifying the connection to be used to commit the XA transaction.
xc_tranID
Type: input
Specifies the XA transaction ID of the transaction which is to be committed.
xp_flags
Type: input
Specifies optional transaction flags. This parameter is 0 or a mask of the following values:
IIAPI_XA_1PC
Transaction has not been prepared (one-phase commit).