KB3099323 – PATAISA: DBCC CHECKFILEGROUP praneša apie klaidingas neatitikimo klaidas duomenų bazėje, kurioje yra suskaidyta lentelė „SQL Server“ 2014"

Taikoma
SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Požymiai

Tarkime, kad turite duomenų bazę, kurioje yra "Microsoft „SQL Server“ 2014" skaidyta lentelė. Lentelėje yra stulpelių saugyklos indeksas, o lentelės skaidiniai yra susieti su skirtingomis failų grupėmis. Vykdydami sakinį DBCC CHECKFILEGROUP, gaunate šiuos klaidingus nenuoseklumo klaidų pranešimus:

Pastaba

Msg 8965, Level 16, State 1
Lentelės klaida: objekto ID, objekto ID><, indekso ID>, skaidinio < ID, skaidinio ID><, alloc vieneto ID, alloc vieneto ID <> (LOB duomenų tipas). Ne eilutės duomenų mazgas puslapyje (<puslapio ID>), lizdo <ID>, teksto ID <teksto ID> nurodo puslapis (<puslapio ID>), lizdo <lizdo ID>, bet nuskaitymas nebuvo pastebėtas. Funkcija CHECKFILEGROUP lentelėje "PageArchive" (objekto ID <objekto ID>) rado 0 paskirstymo klaidų ir N nuoseklumo klaidų.

Tačiau vykdydami DBCC CHECKDB sakinį, negaunate jokių nuoseklumo klaidos pranešimų. Be to, vykdant DBCC CHECKDB sakinį su parinktimi REPAIR_ALLOW_DATA_LOSS nuoseklumo klaidos nepašalinamos. Taip yra todėl, kad nuoseklumo klaida, kurią praneša DBCC CHECKFILEGROUP, yra klaidingai teigiama ir ataskaitų klaida, kurios galima nepaisyti.

Sprendimas

Problema pirmą kartą buvo išspręsta šiuose kaupiamuosiuose "„SQL Server“" naujinimuose:

Rekomendacija: įdiekite naujausią "„SQL Server“" kaupiamąjį naujinimą

Kiekviename naujame „SQL Server“ kaupiamajame naujinime yra visos karštosios pataisos ir visos saugos pataisos, kurios buvo įtrauktos į ankstesnį kaupiamąjį naujinimą. Rekomenduojame atsisiųsti ir įdiegti naujausius kaupiamuosius "„SQL Server“" naujinimus:

      

Būsena

„„Microsoft““ patvirtino, kad tai yra „„Microsoft““ produktų, išvardytų dalyje „Taikoma“, problema.