xa_complete()--Test Completion of Asynchronous XA Request (Transaction Scoped Locks)


  Syntax
 #include <xa.h>

 int xa_switch.xa_complete_entry(int *handle,     
     int *retval, int rmid, long flags)  

  Default Public Authority: *USE

  Service Program: QTNXADTP

  Threadsafe: Yes

A transaction manager calls xa_complete() to wait for the completion of an asynchronous operation. Asynchronous operations are not supported by the DB2 UDB for iSeries resource manager. This function is provided only for compliance with the X/Open XA Specification.


Parameters

handle
(Input) A pointer to an integer value returned by an XA function that had TMASYNC specified.

retval
(Output) A pointer to the integer return value of the asynchronous function.

rmid
(Input) An integer value that the transaction manager generated when calling xa_open(). The rmid identifies the resource manager.

flags
(Input) The follow are valid settings of flags.

TMMULTIPLE: 0x00400000L Test completion of any outstanding asynchronous operation.

TMNOWAIT: 0x10000000L Test for completion without blocking.

TMNOFLAGS: 0x00000000L Use if no other flags are set.


Authorities

None


Return Value

-6 [XAER_PROTO]

xa_complete() was not successful. TMUSEASYNC 0x00000004L was not set in the flags element of the XA resource manager's xa_switch_t structure. Asynchronous operations are not supported.



Error Messages

The following messages may be sent from this function.

Message ID Error Message Text
CPE3418 E Possible APAR condition or hardware failure.
CPF3CF2 E Error(s) occurred during running of &1 API.
CPF9872 E Program or service program &1 in library &2 ended. Reason code &3.


Related Information



API introduced: V5R2
Top | UNIX-Type APIs | APIs by category