tmsrv two phase commit state machine review
|Priority:||Normal (Code 4)||Due date:|
1) In case of xa_prepare returns XAER_RMERR, TPEABORT shall be returned and transaction shall be aborted.
2) Add support for non standard XA_RETRY for xa_abort call.
3) In case if XAER_RMERR is returned for xa_commit call, TPEHEURISTIC error shall be returned instead of TPEHAZARD
4) In case of XA_HEUR* errors, xa_forget shall be called to terminate the operations
5) Provide better crash recovery to skip the invalid options and try to finalize the transaction according to last known/logged state.