KB3174963 – LØSNING: Datatab, når du ændrer kolonnehandlinger i en stor hukommelsesoptimeret tabel i SQL Server 2016

Gælder for
SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use)

Symptomer

I SQL Server 2016 kører de fleste ALTER TABLE-scenarier nu parallelt på en hukommelsesoptimeret tabel og resulterer i en optimering af skrivninger til transaktionsloggen. Dog kan ændring af kolonnehandlinger i en stor hukommelsesoptimeret tabel, der kører parallelt, medføre tab af data. 

NoteALTER TABLE-handlinger kører enkelttrådet og påvirkes ikke af dette problem.

Løsning

Problemet blev først rettet i følgende kumulative opdatering af SQL Server:

Anbefaling: Installér den seneste kumulative opdatering til SQL Server

Hver ny kumulativ opdatering til SQL Server indeholder alle de hotfixes og alle de sikkerhedsrettelser, der fulgte med den forrige kumulative opdatering. Vi anbefaler, at du downloader og installerer de seneste kumulative opdateringer til SQL Server:

      

Løsning

Du kan løse dette problem ved at deaktivere log-optimeret til alter-handlinger ved at aktivere sporingsflag 9909. 

Hvis du vil aktivere sporingsflag 9909, skal du tilføje startparameteren -T9909. Eller du kan bruge sætningen dbcc traceon(9909) til en bestemt session.

Status

Microsoft har bekræftet, at dette er et problem i de Microsoft-produkter, der er angivet i afsnittet "Gælder for".

Referencer

Få mere at vide om den terminologi, som Microsoft bruger til at beskrive softwareopdateringer.