KB4039089 – OPRAVA: EXCEPTION_ACCESS_VIOLATION chyba při spuštění uložené procedury sys.sp_MScdc_capture_job v SQL Server

Platí pro
SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use) SQL Server 2016 Service Pack 1 SQL Server 2017 on Windows (all editions) SQL Server 2017 on Linux (all editions) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Příznaky

Vezměte v úvahu následující scénář:

  • Předpokládejme, že máte v Microsoft SQL Server tabulky rozdělené na oddíly a že jsou součástí Change Data Capture (CDC) nebo transakční replikace. Z těchto tabulek můžete přepínat nebo odpínat oddíly.
  • Když provádíte operace jazyka DML (Data Manipulation Language), můžete si po přepnutí oddílu všimnout, že dojde k EXCEPTION_ACCESS_VIOLATION a vygeneruje se soubor s výpisem stavu paměti.

Poznámka

Datum/čas ***Výpis zásobníku odesílaný do FilePath\FileName
Datum a čas SqlDumpExceptionHandler: Process ProcessID generoval závažnou výjimku c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server tento proces ukončuje.
Datum a čas * *******************************************************************************
Datum a čas
Datum a čas * ZAČÁTEK VÝPISU ZÁSOBNÍKU:
Datum a čas
Datum a čas
Datum a čas *
Datum a čas
Datum/čas * adresa výjimky = 000007FEE724BD80 Module(sqllang+00000000015BBD80)
Datum a čas * Kód výjimky = c0000005 EXCEPTION_ACCESS_VIOLATION
Datum a čas * Došlo k narušení přístupu při čtení adresy 000000000000002A
Datum a čas * vstupní vyrovnávací paměť 70 bajtů
Datum a čas * sys.sp_MScdc_capture_job
Datum a čas *

Poznámka

Datum/čas ***Výpis zásobníku odesílaný do FilePath\FileName
Datum a čas SqlDumpExceptionHandler: Závažná výjimka c0000005 vygenerovaná kódem PID procesu EXCEPTION_ACCESS_VIOLATION. SQL Server tento proces ukončuje.
Datum a čas * *******************************************************************************
Datum a čas *
Datum a čas * ZAČÁTEK VÝPISU ZÁSOBNÍKU:
Datum a čas * Datum/časSPID
Datum a čas *
Datum a čas *
Datum a čas * adresa výjimky = 000007FEE9D26640 Module(sqllang+0000000001586640)
Datum a čas * Kód výjimky = c0000005 EXCEPTION_ACCESS_VIOLATION
Datum a čas * Došlo k narušení přístupu při čtení adresy 000000000000002A
Datum a čas * Vstupní vyrovnávací paměť 109 bajtů -
Datum a čas * 16 00 00 00 12 00 00 00 02 00 00 00 00 00 00 00 00 00 00
Datum a čas * s p _ r e p 01 00 00 00 0b 00 73 00 70 00 5f 00 72 00 65 00 70 00
Datum a čas * l c m d s & ô 6c 00 63 00 6d 00 64 00 73 00 00 00 00 00 00 26 04 04 f4
Datum a čas * & & ÿ 01 00 00 00 00 26 04 04 00 00 00 00 00 00 00 26 04 04 ff
Datum a čas * ÿÿÿ ¥ & ff ff ff 00 00 a5 0a 00 00 00 00 00 00 26 04 04 8f 13 00
Datum a čas * & & ¡ 00 00 00 26 04 04 00 00 00 00 00 00 00 26 04 04 20 A1 07
Datum a čas * 00

  • Pokud spustíte následující dotaz na cílovou tabulku, můžete si všimnout, že hodnota is_replicated sloupce bude pro neclusterovaný index označená jako 1, což není správně.

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

Řešení

Tento problém je opravený v následujících kumulativních aktualizacích pro SQL Server:

Kumulativní aktualizace 1 pro SQL Server 2017

Kumulativní aktualizace 5 pro SQL Server 2016 SP1

Kumulativní aktualizace 8 pro SQL Server 2014 SP2

Informace o kumulativních aktualizacích pro SQL Server:

Každá nová kumulativní aktualizace pro SQL Server obsahuje všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozí kumulativní aktualizace. Podívejte se na nejnovější kumulativní aktualizace pro SQL Server:

Nejnovější kumulativní aktualizace pro SQL Server 2017

Nejnovější kumulativní aktualizace pro SQL Server 2016

Nejnovější kumulativní aktualizace pro SQL Server 2014

Stav

Společnost Microsoft potvrdila, že se jedná o problém produktů Microsoft, které jsou uvedeny v sekci Platí pro.

Reference

Podívejte se na informace o terminologii, kterou společnost Microsoft používá k popisování aktualizací softwaru.