Tünetek
Helyességi hiba léphet fel, amikor a Microsoft SQL Server a következő műveletet végrehajtó tárolt eljárást hajt végre:
- Nagy méretű objektumokat (például varchar(max) vagy varbinary(max)) használ argumentumként.
- létrehoz egy ideiglenes táblát, amelynek hatóköre az eljárás végrehajtása, és
- A nagy objektum argumentumot használja az ideiglenes táblában.
Az alábbi állítási hiba az SQL Server hibanaplójában jelenhet meg:
Dátum/idő SPID Hiba: 17065, Súlyosság: 16, Állapot: 1.
Dátum/idő SPID SQL Server-helyességi feltétel: File: FilePath\FileName, line = LineNumber Failed Assertion = 'fFalse' Attempt to access of expired blob handle (1). Ez a hiba időzítéssel lehet kapcsolatos. Ha a hiba az utasítás újrafuttatása után sem szűnik meg, a DBCC CHECKDB függvénnyel ellenőrizze az adatbázis szerkezeti integritását, vagy indítsa újra a kiszolgálót, hogy a memóriában tárolt adatstruktúrák ne sérüljenek.
Dátum/idő SPID Hiba: 3624, Súlyosság: 20, Állapot: 1.
Dátum/idő SPID A rendszer érvényesítési ellenőrzése sikertelen volt. A részleteket az SQL Server hibanaplójában találja. Az érvényesítési hibát általában szoftverhiba vagy adatsérülés okozza. Az adatbázis sérülésének ellenőrzéséhez fontolja meg a DBCC CHECKDB futtatását. Ha a telepítés során elfogadta, hogy memóriaképeket küld a Microsoftnak, akkor a rendszer egy kis méretű memóriaképet küld a Microsoftnak. Lehetséges, hogy a Microsoft kibocsát egy frissítést a legújabb szervizcsomagban vagy a műszaki támogatás által kiadott gyorsjavításban.
Ok
Az SQL Server belső logikája letiltja a nagy objektumokra hivatkozó lekérdezések gyorsítótárba helyezését, hogy a későbbi végrehajtások ne hivatkozzanak azokra a LOB-kra (amelyeket a korábbi futtatások során hoztak létre, és ezért érvénytelenek a későbbi futtatásokhoz). Ez a logika nem kezelte az ideiglenes táblákon előforduló halasztott névfeloldás (DNR) esetét, amely miatt ezek a tervek gyorsítótárba kerültek. A hatókörrel rendelkező ideiglenes táblák létrehozása költséges, és az SQL Server gyorsítótárazza őket, hogy későbbi végrehajtások során újra felhasználhassa őket. Ez megakadályozza, hogy az ilyen lekérdezések a sémamódosítások miatt újrafordítsák.
További információ a késleltetett névfeloldásról.
Megoldás
A hibát az SQL Server következő összegző frissítéseiben javítottuk:
8-as összegző frissítés az SQL Server 2016 SP1-hez
4. összegző frissítés az SQL Server 2017-hez
10-es összegző frissítés az SQL Server 2014 Service Pack 2-höz
Az SQL Server összegző frissítéseinek ismertetése
Az SQL Server minden új összegző frissítése tartalmazza az előző buildben szereplő összes gyorsjavítást és biztonsági javítást. Tekintse meg az SQL Server legújabb összegző frissítését:
Az SQL Server 2016 legújabb összegző frissítése
Az SQL Server 2017 legújabb összegző frissítése
Az SQL Server 2014 legújabb összegző frissítései
Állapot
A Microsoft megerősítette, hogy ez egy olyan probléma a Microsoft-termékekben, amely az „Érintett szolgáltatás“ című szakaszban van felsorolva.
Hivatkozások
Ismerje meg a Microsoft szoftverfrissítésekkel kapcsolatos terminológiáját .