If the coordinator restarts during a global transaction, due to shutdown, failover or server failure, transaction behavior depends on the user-defined timeout and the command being executed.
| Command Status | Command Behavior | Result |
|---|---|---|
| Actively executing command | Command suspends and transfers control to server, except for ROLLBACK, which executes locally on writer. | Commands succeed |
| New DML command | Command suspends and transfers control to server. ROLLBACK and ROLLBACK TO SAVEPOINT execute locally instead of suspending. | Commands succeed |
| Command Status | Command Behavior | Result |
|---|---|---|
| Suspended DML command on connection | The suspended command fails and returns an error. | Transaction rolls back |
| No suspended DML command on connection | The next command returns an error. | Transaction rolls back |
For example, if a transaction suspends and the write server becomes inaccessible, you can roll back the transaction to release resources held by the coordinator for suspended transactions belonging to that writer.