This sunday, our SQL Server 2005 was running a scheduled maintenance. One of the reindexes did not start; it was showing in the job list as
Suspended, waiting on a
LCK_M_SCH lock. We take that to mean it's waiting for a modify schema lock, so the reindex never actually started. Would you agree with this analysis?
The task was blocking a lot of other processes, but the "blocked by" for the reindex process was empty. When we killed the reindex process, all other tasks proceeded normally. What could the reindex have been waiting for?