TMF Application Programmer's Guide (G06.26+)
Designing Single-Threaded Processes
HP NonStop TMF Application Programmer’s Guide—522419-005
2-5
Terminating Transactions
•
A network failure occurs.
•
A transaction is pinning a file on the MAT, and 45% of the MAT fills during the
transaction’s lifetime.
When and how a requester finds out that a transaction has been aborted depends
upon what the requester is doing at any particular time and the exact timing of various
events relative to one another:
•
If the requester is using waited WRITEREAD calls, the error completion occurs for
the WRITEREAD call (a condition code of CCL and one of the error numbers
shown in Table 2-1).
•
If the requester is using nowait WRITEREAD calls, the error completion occurs for
the AWAITIO call.
When a transaction aborts while the requester is issuing WRITEREADs to servers or
reading, updating, or locking audited files, the requester starts receiving error
completions. As the transaction is being aborted, the error number is one of those
between 90 and 97, and listed in Table 2-2. When the transaction is completely
aborted, the error number changes to 78 (invalid transaction ID).
When a transaction is unilaterally aborted by the system, the TFILE entry for the
transaction still exists. To clear the entry from the TFILE, the transaction initiator must
issue an explicit request to end or abort the transaction.
When the transaction initiator calls RESUMETRANSACTION or ENDTRANSACTION,
the error returned depends on the cause of the abort, as reflected in the following
table. For example, Error 93 is returned when the transaction is aborted because it
spans more than 45% of the MAT capacity. The transaction initiator must either end or
abort the transaction.
Table 2-2. Unilateral Abort Error Numbers (page1of2)
Number Cause of Error
90 BeginTransaction CPU failed.
92 Network-related problems occurred.
93 Transaction spanned more than 45% of the MAT capacity.
94 Operator initiated abort.
95 One of the following occurred:
•
Audit loss
•
Backup disk process was not available for takeover
•
Backup disk process failed to takeover
•
Primary disk process failed because of internal error and backup disk
process failed to takeover for this specific transaction
•
Double CPU or disk process failure