Я запускаю EXEC sp_who2 78
и получаю следующие результаты:
Как я могу узнать, почему его статус приостановлен?
Это сложный процесс INSERT
, основанный на дорогостоящем запросе. Большой SELECT
, который получает данные из нескольких таблиц и записывает 3-4 миллиона строк в другую таблицу.
Там нет замков/блоков.
waittype
это связано с CXPACKET
. что я могу понять, потому что есть 9 78, как вы можете видеть на картинке ниже.
Что меня беспокоит, и что я действительно хотел бы знать, так это то, почему номер 1 из SPID
78 приостановлен.
Я понимаю, что когда состояние SPID
приостановлено, это означает, что процесс ожидает ресурс и возобновит работу, когда получит свой ресурс.
Как я могу найти более подробную информацию об этом? какой ресурс? почему он недоступен?
Я часто использую приведенный ниже код и его варианты, но есть ли что-то еще, что я могу сделать, чтобы узнать, почему SPID
приостановлен?
select *
from sys.dm_exec_requests r
join sys.dm_os_tasks t on r.session_id = t.session_id
where r.session_id = 78
Я уже использовал sp_whoisactive. Результат, который я получаю для этого конкретного spid78, выглядит следующим образом: (разбито на 3 фото для экрана)