Estou investigando um servidor SQL Server 2012 lento em um ambiente virtualizado (VMWare 6.5) e encontrei três esperas diferentes no servidor que são... confusas. Estes são HADR_FILESTREAM_IOMGR_IOCOMPLETION
, DIRTY_PAGE_POLL
, e SQLTRACE_INCREMENTAL_FLUSH_SLEEP
esperas.
Todos os três têm essencialmente o mesmo tempo de espera (cerca de 1000 ms/s). Pela pesquisa, vejo que as DIRTY_PAGE_POLL
e SQLTRACE_INCREMENTAL_FLUSH_SLEEP
esperas (geralmente) não são nada para se preocupar. No entanto, a documentação da HADR_FILESTREAM_IOMGR_IOCOMPLETION
espera informa que é uma espera gerada pelo sistema enquanto aguarda a conclusão da replicação de HA.
Este servidor de desenvolvimento específico nunca teve a replicação de alta disponibilidade configurada no servidor (AFAIK/AFAICT) e agora não tem replicação ou Always On High Availability de qualquer tipo configurado.
Nesse caso -
- Por que a
HADR_FILESTREAM_IOMGR_IOCOMPLETION
espera ocorreria? - Essa espera possivelmente causaria ou indicaria uma causa de lentidão em uma situação de carregamento de dados (cargas de dados 5x-10x mais longas do que o esperado)
- Como todas as três esperas estão executando a mesma duração, há algum significado para as outras duas esperas neste caso específico e elas podem indicar uma situação de lentidão no servidor?
Este servidor parece estar configurado de forma idêntica ao servidor ativo (também virtualizado) que estamos tentando duplicar, com exceção da versão do SO (Nt6.3 Build 9600 ao vivo, NT6.1 SP1 Build 7601 no Dev). Nenhuma dessas três esperas aparece significativamente no servidor ativo.
Alguma ideia?
De acordo com a entrada da biblioteca de estatísticas de espera de Paul Randal para isso , esperas devem ser esperadas se os AGs estão configurados ou não:
Observe, no entanto, que esse tipo de espera foi introduzido no SQL Server 2012, portanto, se seu "servidor ativo" for uma versão mais antiga, você não verá esse tipo de espera nele.
Também não é surpreendente que a duração da espera seja semelhante para essas três esperas, pois cada uma delas ocorre em uma programação de rotina.
Infelizmente, é muito improvável que essas três esperas específicas sejam as culpadas pelo carregamento de dados mais lento do que o esperado. Eu os filtraria e verificaria as estatísticas de espera novamente. Considere filtrar todas as estatísticas de espera "benignas" (exemplo aqui: Estatísticas de espera ou por favor me diga onde dói ) e revisar o que é alto.