I have a SQL Server 2005 Std (x64) with SP4 that has a procedure I cannot seem to kill. If I view sys.dm_exec_requests I see SPID 103 with wait_type of LCK_M_SCH_M, a status of SUSPENDED and command of KILLED/ROLLBACK. However the SPID doesn't go away. I can even do sp_who 103 and I see the SPID with KILLED/ROLLBACK. The SPID has a current wait_time of almost 20 hours since I killed it.
Also, running KILL 103 WITH STATUS ONLY returns 0% completed
OFFLINEorSINGLE_USER-WITH ROLLBACK IMMEDIATEand then set the database backONLINEorMULTI_USER. Might be worth a try if you can afford to blip the database for a moment but not the entire instance. – Aaron Bertrand Sep 08 '11 at 17:24