Troubleshooting Blocking

Blocking is a general term that can have several meanings, but in the context of concurrency, it refers to SQL Server processes that are prevented from completing their tasks because they are waiting on activities from other processes. More specifically, blocking usually refers to user processes that are caused to wait by other user processes because they need to access and lock data resources such as rows, pages, indexes, or tables in a database.

A task may also wait for latches, which are lower-level synchronization primitives. Such latch waits usually relate to I/O or other server configuration issues, and not to the type of blocking we are focusing on here. For more information on waiting caused by latches, see “Waiting ...

Get Inside Microsoft® SQL Server™ 2005: Query Tuning and Optimization now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.