Durante a reindexação usando o procedimento armazenado IndexOptimize do Ola , as filas de envio de log para réplicas assíncronas remotas podem crescer bastante se houver muitas desfragmentações de índice grandes, exigindo logs de transação gigantescos. Há um parâmetro @Delay no script que pode ser usado para inserir um atraso entre cada operação de índice, mas ele não fornece a capacidade de atraso somente quando as filas de envio de log são altas.
Um mecanismo de limitação mais inteligente é necessário para controlar os tamanhos da fila de envio de log durante a reindexação pesada.
E sim, eu sei que a reindexação não é realmente necessária com nossos SSDs corporativos, mas fazemos isso para apaziguar as organizações de suporte de terceiros que culparão a fragmentação por qualquer problema de desempenho.
Insira o código a seguir no procedimento IndexOptimize para implementar uma espera que permitirá que as filas de envio de log sejam liberadas antes de continuar. Conforme escrito, ele continuará assim que houver menos de 1 GB nas filas de envio de log.
Este código precisa ser colocado imediatamente após o
IF @Delay > 0
bloco no procedimento. Com a versão atual do IndexOptimize, ficaria assim: