Sintomas
Suponha que você tenha uma tabela particionada com um CCI (índice de columnstore clusterizado) baseada no Microsoft SQL Server 2014. Quando você tenta inserir linhas nessa tabela usando a operação inserção em massa (por exemplo, inserir em... SELECIONAR de...), o SQL Server pode gerar um erro de violação de acesso (AV) se as seguintes condições se aplicarem à sua tabela:
-
A tabela tem uma restrição CHECK na segunda coluna ou colunas superiores.
-
Você solta uma ou mais colunas antes da coluna com a restrição CHECK da tabela, criando lacunas nos números ordinais da coluna.
-
Em seguida, insira dados em massa na segunda partição ou em uma partição subsequente (mas não na primeira partição) que tenha sido:
-
Reorganizadas usando ALTER INDEX... REBUILD PARTITION = <o número da sua partição, segundo ou superior>.
-
Alternado para uma tabela de estágio usando ALTER TABLE... ALTERNAR PARA... PARTIÇÃO <o número da sua partição, o segundo ou superior>.
-
Quando isso acontece, você pode receber uma mensagem de erro semelhante à seguinte, e um arquivo de despejo de AV será gerado automaticamente na pasta de log de erros do SQL Server:
Mensagem de erro: MSG 596, nível 21, estado 1, line LineNumber Não é possível continuar a execução porque a sessão está no estado eliminar. MSG 0, nível 20, estado 0, line LineNumber Ocorreu um erro grave no comando atual. Os resultados, se houver, devem ser descartados.
Resolução
Esse problema foi corrigido na seguinte atualização cumulativa do SQL Server:
Cada nova atualização cumulativa do SQL Server contém todos os hotfixes e todas as correções de segurança incluídas na atualização cumulativa anterior. Confira as atualizações cumulativas mais recentes do SQL Server:
Status
A Microsoft confirmou que este é um problema nos produtos Microsoft listados na seção "Aplicável a".
Referências
Saiba mais sobre a terminologiaque a Microsoft usa para descrever atualizações de software.