• Chris Harshman (12/1/2008)


    I thought the only thing that prevented a KILL from working was if the session was calling an extended stored procedure, was the same session that issued the KILL, or you tried to kill a system session?

    Some things prevent it from working quickly: rollback can take a long time, and the killed process will not die until rollback is complete; if the process is waiting on a write to the client, it isn't executing any code so it can't look to see that its kill flag has been set and won't die until it comes out of the wait; any other synchronous IO that it's waiting for can have the same effect; and MSSQL may still have some bugs (code paths that should check the kill flag but don't) but that would surprise me. If network connections have been set up with ridiculously long timeout the IO waits can seem to last for ever, so that KILL effectively doesn't work.

    Tom