SOS Scheduler Yield

No post anterior, comentamos sobre o funcionamento do Scheduler, que funciona como um multitasking em modo cooperativo. Para que isso funcione adequadamente, todo o código SQL Server (escrito em C++) é cuidadosamente escrito para realizar periodicamente uma operação denominada “YIELD”.

A tradução de Yield é “dar passagem”, assim como aquela placa de trânsito:

image

 

Como que isso afeta a vida dos DBA?

Se você encontrou os erros 17883, 17884, 17887 ou 17888, então você encontrou um problema no processo de “Scheduler Yield”. Provavelmente você se deparou com um BUG. Esses erros são considerados extremamente críticos pelo nosso suporte, pois afetam a performance e estabilidade do banco de dados.

No próximo post, vamos desvendar um pouco mais esse mistério e darei os primeiros passos sobre a importância de um Memory Dump.

 

Referências

How To Diagnose and Correct Errors 17883, 17884, 17887, and 17888
https://technet.microsoft.com/en-us/library/cc917684.aspx