Tünetek
Vegyük például a következő esetet:
- Tegyük fel, hogy particionálta a táblákat a Microsoft SQL Server, és azok a Change Data Rögzítés (CDC) vagy a tranzakciós replikáció részét képezik. A partíciókat ezekből a táblákból tudja be- és kikapcsolni.
- A partícióváltás után, amikor Data Manipulation Language (DML) műveleteket végez, EXCEPTION_ACCESS_VIOLATION történik, és memóriaképfájl jön létre.
Megjegyzés
Dátum/idő ***A memóriakép elküldése a következő helyre: FilePath\FileName
Dátum és idő SqlDumpExceptionHandler: Process ProcessID generated fatal exception c0000005 EXCEPTION_ACCESS_VIOLATION. Az SQL Server leállítja ezt a folyamatot.
Dátum/idő * *******************************************************************************
Dátum és idő *
Dátum/idő * STACK DUMP START (VEREMMEMÓRIA LÉTREHOZÁSA):
Dátum és idő *
Dátum és idő *
Dátum és idő *
Dátum és idő *
Dátum/idő * kivételcím = 000007FEE724BD80 Module(sqllang+00000000015BBD80)
Dátum/idő * Kivételkód = c0000005 EXCEPTION_ACCESS_VIOLATION
Dátum/idő * Hozzáférés-megsértés történt, olvasási cím 000000000000002A
Dátum/idő * Bemeneti puffer 70 bájt
Dátum/idő * sys.sp_MScdc_capture_job
Dátum és idő *
Megjegyzés
Dátum/idő ***A memóriakép elküldése a következő helyre: FilePath\FileName
Dátum és idő SqlDumpExceptionHandler: Process PID generated fatal exception c0000005 EXCEPTION_ACCESS_VIOLATION. Az SQL Server leállítja ezt a folyamatot.
Dátum/idő * *******************************************************************************
Dátum és idő *
Dátum/idő * STACK DUMP START (VEREMMEMÓRIA LÉTREHOZÁSA):
Dátum és idő * Date/TimeSPID
Dátum és idő *
Dátum és idő *
Dátum/idő * kivételcím = 000007FEE9D26640 Modul(sqllang+0000000001586640)
Dátum/idő * Kivételkód = c0000005 EXCEPTION_ACCESS_VIOLATION
Dátum/idő * Hozzáférés-megsértés történt, olvasási cím 000000000000002A
Dátum/idő * Bemeneti puffer 109 bájt -
Dátum/idő * 16 00 00 00 12 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00
Dátum/idő * s p _ r e p 01 00 00 00 0b 00 73 00 70 00 5f 00 72 00 65 00 70 00
Dátum/idő * l c m d s & ô 6c 00 63 00 6d 00 64 00 73 00 00 00 00 00 26 04 04 f4
Dátum/idő * & & ÿ 01 00 00 00 00 26 04 04 00 00 00 00 00 00 26 04 04 ff
Dátum/Idő * ÿÿÿ ¥ & ff ff ff 00 00 a5 0a 00 00 00 00 00 00 26 04 04 8f 13 00
Dátum/idő * & & ¡ 00 00 00 26 04 04 00 00 00 00 00 00 26 04 04 20 a1 07
Dátum/idő * 00
- Ha a következő lekérdezést céltáblában futtatja, akkor azt láthatja, hogy az is_replicated oszlop értéke "1"-re lesz megjelölve a nem fürtözött indexhez, ami helytelen.
select index_id, partition_number,* from sys.system_internals_partition_columns pc with(nolock)
JOIN sys.partitions p with(nolock)
ON p.partition_id = pc.partition_id
where p.object_id = object_id ('PartitionTable')
order by 2
Megoldás
A hibát az SQL Server következő összegző frissítéseiben javítottuk:
1. összegző frissítés az SQL Server 2017-hez
5. összegző frissítés az SQL Server 2016 SP1-hez
8-as összegző frissítés az SQL Server 2014 SP2-höz
Az SQL Server összegző frissítéseinek ismertetése:
Az SQL Server minden új összegző frissítése tartalmazza az összes gyorsjavítást és minden biztonsági javítást, amely az előző kumulatív frissítésben szerepelt. Tekintse meg az SQL Server legújabb összegző frissítéseit:
Az SQL Server 2017 legújabb összegző frissítése
Az SQL Server 2016 legújabb összegző frissítése
Az SQL Server 2014 legújabb összegző frissítése
Á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.