Failing to design an application with concurrency in mind, and failure to test an application with the maximum number of expected simultaneous users is one of the main causes of poor application performance.   Locking and blocking is SQL Server’s default method of managing concurrency in a multi-user environment.  In this session we’ll look at the three main aspects of locking: type of lock, duration of lock and unit of locking. We’ll also look at when locks cause blocking and examine various ways to minimize blocking.   In addition to looking at the aspects of locking, in this session, you will learn:  
  • What metadata is available to show you:
The locks that have been acquired. The processes that are blocked and who is blocking them. The tables have had the most problems due to locking and blocking.  
  • What other tools are available to track down other locking and blocking issues.
Presented by Kalen Delaney at SQLBits XV
Slide Deck 224 KB
Demo Code 19 KB