A heuristic completion (or heuristic decision) of a prepared transaction occurs when a resource manager makes a unilateral decision during the completion stage of a distributed transaction to apply or undo. Consequently the results of the distributed transaction are in an indeterminate state, not guaranteed.
Adabas RM
may need to take a heuristic decision
about completing a prepared transaction during:
Note:
Adabas identifies all heuristically completed transactions with a
series of ADAN89 messages starting:
ADAN89 nnnnn 2012-01-09 11:20:46 USER HEURISTICALLY TERMINATED
When a prepared transaction remains at the end of an online save
operation for an Adabas RM the transaction is subject to the Adabas nucleus
TT
parameter (or save utility
TTSYN
parameter) plus an additional 60 seconds. If the
prepared transaction is not complete at the expiry of this time period Adabas
heuristically undoes the transaction which allows the online save to complete.
When a prepared transaction exists at ADAEND
the Adabas RM
prompts the TM
to
complete the distributed transaction according to the required outcome (apply
or undo). When the distributed transaction is complete the
TM
notifies the Adabas RM
to
continue ADAEND
processing. However, if this
notification is not received the Adabas RM
subjects the
transaction to the TT
parameter plus 60 seconds. If the
prepared transaction is not complete at the expiry of this time period Adabas
heuristically commits it to allow ADAEND
to proceed.
This "forced"" ADAEND
will be
accompanied by the following ADAN89 message:
ADAN89 nnnnn 2PH-ADAEND : ADAEND IS FORCED
When a prepared transaction exists at HALT
time the Adabas RM
heuristically undoes prepared
transactions to allow the HALT
to complete. No
communication with the TM
is performed.
Caution:
Under normal situations, it is strongly recommended not to use the
HALT
command for an Adabas
RM
.