BEA Tuxedo COBOL Function Reference
TXCOMMIT(3cbl)
Name
TXCOMMIT() - commit a transaction
Synopsis
DATA DIVISION.
* Include TX definitions.
01 TX-RETURN-STATUS.
COPY TXSTATUS.
PROCEDURE DIVISION.
CALL "TXCOMMIT" USING TX-RETURN-STATUS.
Description
TXCOMMIT() is used to commit the work of the transaction active in the caller's thread of control.
If the transaction_control characteristic (see TXSETTRANCTL()) is TX-UNCHAINED, then when TXCOMMIT() returns, the caller is no longer in transaction mode. However, if the transaction_control characteristic is TX-CHAINED, then when TXCOMMIT() returns, the caller remains in transaction mode on behalf of a new transaction (see the RETURN VALUE and ERRORS sections below).
TX-RETURN-STATUS is the record used to return a value.
Optional Set-up
Return Value
Upon successful completion, TXCOMMIT() returns TX-OK, a non-negative return value.
Errors
Under the following conditions, TXCOMMIT() fails and returns one of these negative values.
- [TX-NO-BEGIN]
- The current transaction committed successfully; however, a new transaction could not be started and the caller is no longer in transaction mode. This return value may occur only when the transaction_control characteristic is TX-CHAINED.
- [TX-ROLLBACK]
- The current transaction could not commit and has been rolled back. In addition, if the transaction_control characteristic is TX-CHAINED, a new transaction is started.
- [TX-ROLLBACK-NO-BEGIN]
- The transaction could not commit and has been rolled back. In addition, a new transaction could not be started and the caller is no longer in transaction mode. This return value can occur only when the transaction_control characteristic is TX-CHAINED.
- [TX-MIXED]
- The work done on behalf of the transaction was partially committed and partially rolled back. In addition, if the transaction_control characteristic is TX-CHAINED, a new transaction is started.
- [TX-MIXED-NO-BEGIN]
- The work done on behalf of the transaction was partially committed and partially rolled back. In addition, a new transaction could not be started and the caller is no longer in transaction mode. This return value can occur only when the transaction_control characteristic is TX-CHAINED.
- [TX-HAZARD]
- Due to a failure, some of the work done on behalf of the transaction may have been committed and some of it may have been rolled back. In addition, if the transaction_control characteristic is TX-CHAINED, a new transaction is started.
- [TX-HAZARD-NO-BEGIN]
- Due to a failure, some of the work done on behalf of the transaction may have been committed and some of it may have been rolled back. In addition, a new transaction could not be started and the caller is no longer in transaction mode. This return value can occur only when the transaction_control characteristic is TX-CHAINED.
- [TX-PROTOCOL-ERROR]
- The function was called in an improper context (for example, the caller is not in transaction mode). The caller's state with respect to transaction mode is not changed.
- [TX-FAIL]
- Either the transaction manager or one or more of the resource managers encountered a fatal error. The nature of the error is such that the transaction manager and/or one or more of the resource managers can no longer perform work on behalf of the application. The exact nature of the error is written to a log file. The caller's state with respect to the transaction is unknown.
See Also
TXBEGIN(3cbl), TXSETCOMMITRET(3cbl), TXSETTIMEOUT(3cbl), TXSETTRANCTL(3cbl)
|
Copyright © 2000 BEA Systems, Inc. All rights reserved.
Required browser: Netscape 4.0 or higher, or Microsoft Internet Explorer 4.0 or higher.
|