Usuário com melhor resposta
"EXEC sp_server_diagnostics 20" com Task State "SUSPENDED' e Wait Type 'SP_SERVER_DIAGNOSTICS_SLEEP'

Pergunta
-
Bom dia pessoal.
Hoje pela manhã percebi que em um dos nossos servidores monitorados, uma das sessões de usuários estava executando a procedure "sp_server_diagnostics", porém com status constante "SUSPENDED' e com o tempo de espera em 'SP_SERVER_DIAGNOSTICS_SLEEP'.
Sei que a sp_server_diagnostics captura dados de diagnóstico e informações de saúde sobre o SQL Server para detectar potenciais falhas, porém, ele fica rodando com status suspenso.
Fiz o teste e executei com meu usuário a procedure e retornou rapidamente o valor.
Algo está errado. Alguém sabe o que pode ser?
Luiz Fernando Lima - MCTS SQL Server - Microsoft Partner
- Editado Luiz Fernando BR terça-feira, 12 de dezembro de 2017 16:09
terça-feira, 12 de dezembro de 2017 13:45
Respostas
-
Luiz, boa tarde.
Esse wait type indica que a procedure está em espera entre uma captura e outra de dados de diagnóstico.
Procurei referências e não achei alguma em que essa procedure esteja afetando o servidor.
Ela está te causando algum problema?Lembrando que os valores de consumo dessa procedure são cumulativos e por isso, se sua máquina não foi desligada há algum tempo, esses valores devem ser bem altos.
https://www.sqlskills.com/help/waits/sp_server_diagnostics_sleep/
https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-server-diagnostics-transact-sql
Espero ter ajudado.
Mariana Del Nero /* Se a resposta foi útil, não esqueça de marcá-la */
- Marcado como Resposta Luiz Fernando BR quinta-feira, 14 de dezembro de 2017 11:31
quarta-feira, 13 de dezembro de 2017 17:02
Todas as Respostas
-
Luiz, boa tarde.
Esse wait type indica que a procedure está em espera entre uma captura e outra de dados de diagnóstico.
Procurei referências e não achei alguma em que essa procedure esteja afetando o servidor.
Ela está te causando algum problema?Lembrando que os valores de consumo dessa procedure são cumulativos e por isso, se sua máquina não foi desligada há algum tempo, esses valores devem ser bem altos.
https://www.sqlskills.com/help/waits/sp_server_diagnostics_sleep/
https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-server-diagnostics-transact-sql
Espero ter ajudado.
Mariana Del Nero /* Se a resposta foi útil, não esqueça de marcá-la */
- Marcado como Resposta Luiz Fernando BR quinta-feira, 14 de dezembro de 2017 11:31
quarta-feira, 13 de dezembro de 2017 17:02 -
Olá Mariana, desde já agradeço a resposta.
Não está impactando de forma alguma o servidor. Apenas fiquei com a 'pulga atrás da orelha' pelos status de espera e o tipo de contenção. Na verdade, observando o tempo de execução, dá para perceber que ela não está travada, mas sim que fica constantemente recuperando valores.
Também não achei nada em documentações com o status constante "SUSPENDED' e com o tempo de espera em 'SP_SERVER_DIAGNOSTICS_SLEEP', exatamente assim.
Mas de qualquer forma, agradeço mais uma vez.
Luiz Fernando Lima - MCTS SQL Server - Microsoft Partner
quinta-feira, 14 de dezembro de 2017 11:26 -
Luiz,
Mas você conseguiu identificar o que estava rodando nesta session?
A muitos anos atrás tive uma situação muito parecida com a sua e com muito esforço consegui identificar que era uma transação em processamento dentro de uma aplicação que estava gerando este suspended.
Pedro Antonio Galvao Junior [MVP | MCC | MSTC | MIE | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]
sábado, 16 de dezembro de 2017 13:23Moderador -
Olá Junior.... desculpe o atraso na resposta....hehehe
Amigo, não identifiquei não....posteriormente não encontrei mais na instância.
Depois disso nunca mais encontrei esta situação.
Obrigado!
Luiz Fernando Lima - MCTS SQL Server - Microsoft Partner
sexta-feira, 23 de março de 2018 00:23