This module implements the omg costransactions::recoverycoordinator interface.
To get access to the record definitions for the structures use:
-include_lib("cosTransactions/include/CosTransactions.hrl").
replay_completion(RecoveryCoordinator, Timeout, Resource) -> Return
Types:
RecoveryCoordinator = #objref
Timeout = integer(), milliseconds | 'infinity'
Resource = #objref
Return = Status | {'EXCEPTION', E}
E = #'CosTransactions_NotPrepared'{}
Status = atom()
The RecoveryCoordinator object is returned by the operation CosTransactions_Coordinator:register_resource/3. The replay_completion/2 may only be used by the registered Resource and returns the current status of the transaction. The operation is used when recovering after a failure.
Possible Status replies:
*
'StatusCommitted'
*
'StatusCommitting'
*
'StatusMarkedRollback'
*
'StatusRollingBack'
*
'StatusRolledBack'
*
'StatusActive'
*
'StatusPrepared'
*
'StatusUnknown'
*
'StatusNoTransaction'
*
'StatusPreparing'
Warning:
replay_completion/3 is blocking and may cause dead-lock if a child calls this function at the same time as its parent invokes an operation on the child. Dead-lock will not occur if the timeout has any value except 'infinity'.
If the call is external incoming (intra-ORB) the timeout will not be activated. Hence, similar action must be taken if the Resource resides on another vendors ORB.