Platform SDK: Transaction Server

ITransactionOutcomeEvents::HeuristicDecision

This event is raised when a transaction cannot be consistently committed or aborted because of a heuristic decision made by one of the participants in the transaction.

HRESULT HeuristicDecision (
DWORD
dwDecision,
BOID *
pboidReason,
HRESULT
hr);

Note Heuristic decisions are not supported in the current release.

Parameters

dwDecision [in]
Values from the enumeration XACTHEURISTIC.

typedef enum XACTHEURISTIC {
    XACTHEURISTIC_ABORT,
    XACTHEURISTIC_COMMIT,
    XACTHEURISTIC_DAMAGE,
    XACTHEURISTIC_DANGER,
    } XACTHEURISTIC;

pboidReason [in]
A BOID indicating why the transaction aborted. This value is provided by the party making the heuristic decision.

hr [in]
Always S_OK.

Return Values

S_OK
Success.