-911 THE CURRENT UNIT OF WORK HAS BEEN ROLLED BACK DUE TO DEADLOCK OR TIMEOUT. REASON reason-code, TYPE OF RESOURCE resource-type, AND RESOURCE NAME resource-name
Explanation
The current unit of work was the victim in a deadlock, or experienced a timeout, and had to be rolled back.
- reason-code
- The DB2® reason code value that indicates the reason for the failure. For explanations of reason codes, see DB2 reason codes.
- resource-type and resource-name
- The type and name of the resource that the message identifies. For an explanation of resource-type and resource-name values, see Resource types.
Attention: The changes associated with the unit of work must be entered again.
SQLERRD(3) also contains the reason-code which indicates whether a deadlock or timeout occurred.
The most common reason codes are:
- 00C90088 - deadlock
- 00C9008E - timeout
System action
The statement cannot be processed. The application is rolled back to the previous COMMIT.
Programmer response
A long-running application, or an application that is likely to encounter a deadlock, should (if possible) issue frequent COMMIT commands. This can lessen the possibility of a deadlock occurring. See message DSNT376I for other possible ways to avoid future deadlocks or timeouts. On receipt of the SQLCODE -911, the application should, in general, terminate.
SQLSTATE
40001