DSNR035I csect-name WARNING - UNCOMMITTED UR AFTER number CHECKPOINTS - CORRELATION NAME = correlation-name CONNECTION ID = connection-id LUWID = logical-unit-of-work-id=token PLAN NAME = plan-name AUTHID = authorization-id END USER ID = user-id TRANSACTION NAME = transaction-name WORKSTATION NAME = workstation-name

Explanation

This message indicates that during checkpoint processing, Db2 encountered an uncommitted unit of recovery (UR) that has an inflight or indoubt status.

csect-name
The name of the control section that issued the message.
number
The cumulative number of checkpoints that were taken since the beginning of the UR.
correlation name
The correlation name for the thread that is associated with the UR.
connection-id
The connection ID for the thread that is associated with the UR.
logical-unit-of-work-id
The logical unit of work ID for the thread that is associated with the UR. An asterisk (*) denotes that the thread originated at the local site.

This value consists of a fully qualified LU network name followed by a period and an LUW instance number. The LU network name consists of a one- to eight-character network ID, a period, and a one- to eight-character network LU name. The LUW instance number consists of 12 hexadecimal characters that uniquely identify the unit of work.

token
A unique token number that is associated with the logical unit of work ID.

If the UR is inflight, token refers to the thread in the report from the DISPLAY THREAD command with the TYPE(ACTIVE) option.

If the UR is indoubt, token might not refer to the thread in the report from the DISPLAY THREAD command with the TYPE(INDOUBT) option. However, in this case, you can use the logical unit of work ID to determine the correct association.

plan-name
The plan for the thread that is associated with the UR.
authorization-id
The authorization ID for the thread that is associated with the UR.
user-id
The user ID that is associated with the UR, if the thread was created with client user information. Otherwise, an asterisk (*).
transaction-name
The transaction that is associated with the UR, if the thread was created with client user information. Otherwise, an asterisk (*).
workstation-name
The workstation hostname that is associated with the UR, if the thread was created with client user information. Otherwise, an asterisk (*).

System action

Processing continues. If statistics class 3 is turned on, IFCID 0313 is written.

System programmer response

You can see the UR in the DISPLAY THREAD TYPE(ACTIVE) report or the DISPLAY THREAD TYPE(INDOUBT) report. Depending on which report is relevant, take one of the following actions:

If the UR is in the DISPLAY THREAD TYPE(ACTIVE) report:
Consult with the application programmer to determine whether this UR is problematic.

If the problematic UR is caused by an application program, you can use the CANCEL THREAD command to roll back the UR, if necessary. Input to the command can be the logical-unit-of-work-id value or the token value. The amount of time required for the backout process depends on the amount of work performed by the UR.

For more information about problems caused by uncommitted URs, see the information about programming for concurrency.

If the UR is in the DISPLAY THREAD TYPE(INDOUBT) report:
The UR is typically resolved automatically in a reasonable amount of time. However, in cases where the UR is not resolved, consider using the RECOVER INDOUBT command to provide a commit or abort decision. Input to the command can be the logical-unit-of-work-id value, the token value, or any other appropriate value that is provided in the DISPLAY THREAD TYPE(INDOUBT) report. The amount of time required for the backout process depends on the amount of work performed by the UR.

Programmer response

Ensure that the application commits frequently enough, or consult with your Db2 administrator about decreasing the frequency of the check for uncommitted URs. Use the URCHKTH subsystem parameter.