Prefácio
Na empresa em que trabalho, usamos instantâneos de banco de dados em nosso processo de ETL para garantir que os dados estejam em um estado consistente. Os arquivos de instantâneo são colocados em um disco separado (no nosso caso o X:).
Um dos bancos de dados de origem é um banco de dados de 3 TB com dados atualizados com frequência. Ao criar um instantâneo de banco de dados deste banco de dados, encontramos momentos em que os arquivos de instantâneo aumentaram e recebemos o erro:
"Erro do sistema operacional 112(Não há espaço suficiente no disco.) encontrado."
Esse erro estava sempre nas janelas de manutenção do índice ou quando um processo em massa era executado no banco de dados de origem. Desde então, aumentamos o espaço em disco disponível na unidade X:\ e alteramos a programação de trabalhos de manutenção de índice/dbcc checkdb. Como esperado, os erros não ocorreram mais.
Problema
De tempos em tempos precisamos de uma carga inicial de algumas tabelas grandes (600.000.000 linhas / 300GB por tabela). Esta semana, encontramos um erro diferente no carregamento dessas tabelas grandes:
O sistema operacional retornou o erro 665 (a operação solicitada não pôde ser concluída devido a uma limitação do sistema de arquivos) no SQL Server durante uma gravação no deslocamento 0x000056fb976000 no arquivo 'X:\Data\DatabaseName_snapshot.ss'.
Mensagens adicionais no log de erros do SQL Server e no log de eventos do sistema podem fornecer mais detalhes.
Este erro ocorre apenas 18 a 25 horas após a criação do instantâneo.
As coisas já tentaram
- Desabilitado todos os trabalhos de manutenção de índice/dbcc checkdb e outros processos que alteram muitos dados (exceto entrada do usuário).
- Monitorou o espaço disponível no disco de instantâneo (X:\400GB). Cerca de 80% do espaço disponível está livre quando ocorre o erro.
- Procurei perguntas semelhantes no stackexchange. O instantâneo do banco de dados encontrado entra no modo SUSPECT (SQL 2014 no WIN2K8R2) que não foi respondido.
- Olhando para o artigo https://blogs.msdn.microsoft.com/psssql/2015/06/10/operating-system-error-665-file-system-limitation-not-just-for-dbcc-anymore/ agora.
Alguém tem mais ideias para resolver este problema?
Estamos usando o SQL Server 2014 SP2 CU1, edição corporativa e o Windows Server 2012.