Where the return code means :
-2 Asynchronous operation already outstanding -3 A resource manager error occurred -4 The XID is not valid -5 Invalid arguments were given -6 Routine invoked in an improper context -7 Resource Manager unavailable -8 the XID already exists -9 Resource Manager doing work outside global transaction
The following indicate the transaction is marked as roll-back only
100 The resource manager marked the transaction roll-back only for an unspecified reason. 101 A communication failure occurred 102 The resource manager detected a deadlock 103 The resource manager detected a violation of the integrity of its resources 104 The resource manager marked the transaction roll-back only for a reason not in this list. 105 A protocol error occurred in the resource manager 106 The work represented by this transaction took too long 107 The resource manager detected a transient error