1222: Lock request time out period exceeded
SQL ServerWhat does it mean?
A query's timeout expired while it waited to acquire a lock. The request was canceled because another transaction held the required resource locked for too long.
Why does it happen?
Exceeding the wait time set with SET LOCK_TIMEOUT, long-running blocking transactions, open uncommitted transactions, long scans and lock conflicts.
How to fix it
Find the blocker: examine sys.dm_exec_requests, sys.dm_tran_locks and the blocking_session_id column, or use sp_who2 / sp_whoisactive. Shorten long transactions and commit them. Adjust LOCK_TIMEOUT if needed. On read-heavy systems, reduce reader-writer conflicts with RCSI/snapshot isolation.
More from this engine
- 18456Login failed for user
- 8152String or binary data would be truncated
- 2628String or binary data would be truncated in table, column ...; truncated value
- 9002The transaction log for database is full due to ...
- 1105Could not allocate space for object in database because the filegroup is full
- 208Invalid object name
- 229The SELECT/EXECUTE permission was denied on the object