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 the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.