Simptome
Razmotrite sledeći scenario:
-
Pretpostavimo da imate tabele podeljene u programu Microsoft SQL Server i da su one deo stavke Promena hvatanja podataka (CDC) ili Transakcijska replikacija. Možete da se prebacite ili isključite particiju iz ovih tabela.
-
Nakon prebacivanja particije kada izvršite operacije Jezik za manipulisanje podacima (DML), možda ćete primetiti da EXCEPTION_ACCESS_VIOLATION pojavljuje EXCEPTION_ACCESS_VIOLATION i da se generiše datoteka za izbacivanje memorije.
Datum/ vreme ***Stack Depo koji se šalje u FilePath\FileName
Date/Time SqlDumpExceptionHandler: ProcessID generisala je fatalni izuzetak c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server prekida ovaj proces. Datum/ vreme * *** Datum/ vreme * Datum/vreme * BEGIN STACK DUMP: Date/Time * Date/Time * Date/ Time * Date/Time * Date/Time * Exception Address = 00007FEE724BD80 Module(sqllang+0000000015BBD80) Date/Time * Exception Code = c0000005 EXCEPTION_ACCESS_VIOLATION Date/Time * Došlo je do kršenja pravila pristupa u adresi za čitanje 0000000000002A datum/ vreme * Ulazni bafer 70 bajta Datum/ vreme * sys.sp_MScdc_capture_job Datum/vreme *Datum/ vreme ***Stack Depo koji se šalje u FilePath\FileName
Date/Time SqlDumpExceptionHandler: Process PID je generisala fatalni izuzetak c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server prekida ovaj proces. Datum/ vreme * **** */Vreme * Datum/ vreme * BEGIN STACK DUMP: Datum/ vreme * Datum/vreme SPIDdatum/ vreme * Datum/ vreme * Datum/vreme * Adresa izuzetka = 000007FEE9D26640 Module(sqllang+0000000001586640) Datum/vreme * Kôd izuzetka = c0000005 EXCEPTION_ACCESS_VIOLATION Datum/ vreme * Došlo je do kršenja pravila pristupa u adresi za čitanje 0000000000002A datum/ vreme * Bafer unosa 109 bajta - Datum/ vreme * 16 00 00 00 12 00 00 00 00 00 00 00 00 00 00 00 00 Datum/Time * s p _ r e p 01 00 00 00 0b 00 73 00 70 00 5f 00 72 00 65 00 00 Date/Time * l c m d s & ô 6c 00 63 00 6d 00 64 00 73 00 00 00 00 26 04 04 f4 Date/Time * & & prozor 01 00 00 00 00 00 00 00 00 00 00 00 26 04 04 00 00 00 00 00 26 04 04 ffDate/Time * komande & ff ff 00 00 a5 00 00 00 00 00 00 00 04 04 8f 13 00 Date/Time * & & } 00 00 00 26 04 04 00 00 00 00 00 00 00 26 04 04 201 07 Datum/vreme * 00-
Ako pokrenete sledeći upit u odnosu na odredišnu tabelu, možda ćete primetiti is_replicated će vrednost kolone u koloni biti označena kao "1" za indeks koji nije grupisan, što nije tačno.
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
Rezoluciju
Ovaj problem je rešen u sledećim kumulativnim ispravkama za SQL Server:
Kumulativna ispravka 1 SQL Server 2017
Svaka nova kumulativna ispravka za SQL Server sadrži sve hitne ispravke i sve bezbednosne ispravke koje su uključene u prethodnu kumulativnu ispravku. Pogledajte najnovije kumulativne ispravke za SQL Server:
Najnovija kumulativna ispravka za SQL Server 2017.
Status
Microsoft je potvrdio da je ovo problem u Microsoft proizvodima koji su navedeni u odeljku "Odnosi se na".
Reference
Saznajte više o terminologiji kojuMicrosoft koristi za opisivanja softverskih ispravki.