Symptom
Anta att du har en FILESTREAM-aktiverad databas i en instans av Microsoft SQL Server. När du startar en transaktion och använder SqlFileStream .NET API för att öppna en FILESTREAM-fil kan aktiviteten Miss lyckas och ett undantag utlöses p.g.a. externa faktorer.
Om du öppnar filen igen med SqlFileStream inom samma transaktion och commit kan du få interna fel meddelanden av följande slag:
datum/tid, SPID, okänt, fel: 5571<c/> allvarlighets grad: 23<c/> tillstånd: 3.datum/tid, SPID, okänt, internt FILESTREAM-fel: det gick inte att komma åt skräp insamlings tabellen.
Om du kör DBCC CHECKTABLE (' sys.filestream_tombstone_2073058421 ')kan du få följande fel meddelande:
Meddelande 8951, nivå 16, State 1, Line LineNumber
Tabell fel: tabell DBCC CHECKTABLE (' sys.filestream_tombstone_2073058421 ') (ID IDNumber). Data raden har ingen matchande index rad i index ' FSTSNCIdx ' (IDIDNumber). Möjliga eller ogiltiga nycklar för index rad matchning:
Lösning
Korrigeringen för det här problemet ingår i följande uppdateringar för SQL Server:
Kumulativ uppdatering 13 för SQL Server 2017
Om SQL Server-versioner
Varje ny version för SQL Server innehåller alla snabb korrigeringar och säkerhets korrigeringar som fanns i den föregående versionen. Vi rekommenderar att du installerar den senaste versionen för din version av SQL Server:
Lösning
Undvik det här problemet genom att återskapa databas indexet med hjälp av DBCC CHECKTABLE -kommandot.
Status
Microsoft har bekräftat att det här är ett problem i Microsoft-produkterna som nämns i "gäller".
Referenser
Lär dig mer om den vanliga terminologi som Microsoft använder för att beskriva program varu uppdateringar.