Skip to main content

LCK_M_SCH_M

Short Description

Occurs when a task is waiting to acquire a Schema Modify lock. For a lock compatibility matrix, see sys.dm_tran_locks (Transact-SQL).

Detailed Description

You will see this when a thread is trying to modify a schema object and another thread has already has an incompatible lock granted to it.

How to reduce this wait

  • In SQL Server Management Studio (SSMS) Object Explorer, right-click the top-level server object, expand Reports, expand Standard Reports, and then select Activity – All Blocking Transactions. This report shows current transactions at the head of a blocking chain. If you expand the transaction, the report will show the transactions that are blocked by the head transaction. This report will also show the Blocking SQL Statement and the Blocked SQL Statement.
  • Ensure your application uses SQL Server's locking mechanism in an efficient way and investigate why there has been a sudden change in locking.
  • Has there been a software release?
  • and lastly - examine the lock hierarchy to see if one thread is blocking your application are if it is safe do to so, kill the session. I reiterate, this is not something you should do lightly.

Search online

If this article doesn't have the information you need you can try searching online. Remember, you can contribute suggestions to this page.

DBmarlin Trial