Uma operação "ALTER INDEX ALL REBUILD" no SQL Server 2012 falhou porque o log de transações ficou sem espaço. Os índices nunca foram reorganizados ou reconstruídos, então a fragmentação é superior a 80% em quase todos eles.
O banco de dados usa o modelo de recuperação simples. Presumi que, após cada operação de índice executada pela forma "ALL" do comando, os dados do log de transações seriam liberados antes da próxima reconstrução do índice. É assim que realmente funciona ou as recompilações de índice são registradas como se fossem parte de uma única transação?
Em outras palavras, eu poderia reduzir o crescimento do log de transações escrevendo um script para executar cada reconstrução individualmente? Existem outros fatores a serem considerados?