What does a Status of "Suspended" and high DiskIO means from sp_who2?

Sql Server

Sql Server Problem Overview


I'm trying to troubleshoot some intermittent slowdowns in our application. I've got a separate question here with more details.

I ran sp_who2 to and I've noticed a few connections that have a status of SUSPENDED and high DiskIO. Can someone explain to me what that indicates?

enter image description here

Sql Server Solutions


Solution 1 - Sql Server

This is a very broad question, so I am going to give a broad answer.

  1. A query gets suspended when it is requesting access to a resource that is currently not available. This can be a logical resource like a locked row or a physical resource like a memory data page. The query starts running again, once the resource becomes available. 
  2. High disk IO means that a lot of data pages need to be accessed to fulfill the request.

That is all that I can tell from the above screenshot. However, if I were to speculate, you probably have an IO subsystem that is too slow to keep up with the demand. This could be caused by missing indexes or an actually too slow disk. Keep in mind, that 15000 reads for a single OLTP query is slightly high but not uncommon.

Solution 2 - Sql Server

Suspended. The session is waiting for an event, such as I/O, to complete.

http://msdn.microsoft.com/en-us/library/ms174313.aspx

Solution 3 - Sql Server

Run sp_who2 to find the suspended spid's

Then right click on the server name and open "Activity Monitor"

In Activity Monitor in the Processes section, look for that spid in the "Blocked By" column

enter image description here

That will tell you which process is preventing your suspended process from running

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionNullReferenceView Question on Stackoverflow
Solution 1 - Sql ServerSebastian MeineView Answer on Stackoverflow
Solution 2 - Sql ServerVishwanath DalviView Answer on Stackoverflow
Solution 3 - Sql Serveropperman.ericView Answer on Stackoverflow