Feil #: 190577 (Innholdsvedlikehold) VSTS: 1445038
Symptomer
Når du kjører en kompleks UPDATE -setning sammen med et tips om NOLOCK mot en tabell i Microsoft SQL Server 2008, SQL Server 2012, SQL Server 2008 R2 eller SQL Server-2014, kan ikke-grupperte indeksen ødelegges. I tillegg logges følgende feilmelding i SQL Server-feilloggen:
<Dato><tid> spid # feil: 8646, alvorlighetsgrad: 21, tilstand: 1.
<Dato><tid> spid # kan ikke finne indeksoppføring i indeks-ID 3 i tabellen 2102402659, i databasen ' <databasenavnfor >'. Den angitte indeksen er skadet, eller det er et problem med den gjeldende planen for oppdateringen. Kjøre DBCC CHECKDB eller DBCC CHECKTABLE. Hvis problemet vedvarer, kontakter du kundestøtte.
<Dato><tid> spid # ved hjelp av 'dbghelp.dll' versjon '4.0.5'
<Dato><tid> spid # ** Dump tråd - spid = 0, EC = 0x0000000BD70624C0
<Dato><tid> spid # *** stakk Dump sendes til Y:\MSSQL\MSSQL10. MSSQLSERVER\MSSQL\LOG\SQLDump0003.txt
<Date><Time> spid # * *******************************************************************************
<Dato><tid> spid # *
<Dato><tid> spid # * BEGYNNE BUNKE DUMP:
<Dato><tid> spid # * <dato><tid> spid #
<Dato><tid> spid # *
<Dato><tid> spid # * CPerIndexMetaQS::ErrorAbort - indeksen kan føre til minnefeil
<Dato><tid> spid # *
Merk du kan bruke et NOLOCK tips på kildetabellene i en setning. Du kan imidlertid bruke NOLOCK tips til mål-tabeller i en setning.
Årsak
Dette problemet oppstår fordi NOLOCK tipset gjør at spørringen skal lese feil verdier i tabellen når spørringen leser de samme verdiene flere ganger.
Oppløsning
Problemet ble først løst i den følgende kumulative oppdateringen av SQL Server.
Samleoppdatering 1 for SQLServer-2014/en-us/help/2931693
Kumulativ oppdatering 11 for SQLServer 2012/en-us/help/2908007
Samleoppdatering 7 for SQL Server 2012 SP1/en-us/help/2894115
Kumulativ oppdatering 13 for SQL Server 2008 SP3/en-us/help/2880350
Kumulativ oppdatering 9 for SQL Server 2008 R2 SP2/en-us/help/2887606
Hver nye kumulative oppdateringen for SQL Server inneholder alle hurtigreparasjonene og alle sikkerhetsreparasjoner som fulgte med den forrige kumulative oppdateringen. Sjekk ut de nyeste kumulative oppdateringene for SQL Server:
Status
Microsoft har bekreftet at dette er et problem i Microsoft-produktene som er oppført i delen "Gjelder for".
Author: jackli ; jannaw
Writer: v-shysun
Teknisk redaktør: jackli; jayc; makohli; sqlprev; jannaw
Editor: v-jonwoo