Simptomi
Iedomājieties šādu scenāriju:
-
Pieņemsim, ka programmā Microsoft SQL Server ir sadalītas tabulas un tās ir daļa no izmaiņu datu tveršanas (CDC) vai transakciju replikācijas. Jūs pārslēdzaties uz ieslēgšanas vai izslēgšanas nodalījumu no šīm tabulām.
-
Pēc nodalījuma slēdža, veicot datu manipulācijas valodas (BDL) darbības, iespējams, pamanīsit, ka rodas EXCEPTION_ACCESS_VIOLATION , un tiek ģenerēts atmiņas izmetes fails.
Datuma/laika * * * steka dempings, kas nosūtīts uz FilePath\FileNamedatums/laiks SqlDumpExceptionHandler: process ProcessID generated fatāls Izņēmums c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server izbeidz šo procesu. Datums/laiks ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *Date/Time * * * * _ * * * * * * */* * * darba laikā .datums/laiks * datums/laiks *datums/laiks *datums/laiks *datums/laiks *Date/Time Exception Address = 000007FEE724BD80 Module (sqllang + 00000000015BBD80)datums/laiks * izņēmuma kods = c0000005 EXCEPTION_ACCESS_VIOLATIONdatuma/ laika * piekļuves pārkāpums noticis lasīšanas adrese 000000000000002Adatums/laiks * Input Buffer 70 bytes datums/laiks * sys.sp_MScdc_capture_jobdatums/laiks *
Datuma/laika* * * steka dempings, kas nosūtīts uz FilePath\FileNamedatums/laiksSqlDumpExceptionHandler: process PID generated fatāls Izņēmums c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server izbeidz šo procesu. Datums/laiks ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *Date/Time ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * _ * * * * * * */* * *Date/Time *darba laikā. datums/laiks * datums /laiks SPIDdatums/laiks * datums/laiks * datums/laiks * Exception Address = 000007FEE9D26640 Module (sqllang + 0000000001586640) datums/laiks * Exception Code = c0000005 EXCEPTION_ACCESS_VIOLATION datuma/laika * piekļuves pārkāpums noticis lasīšanas adrese 000000000000002A datums/laiks * Input Buffer 109 bytes-datums/laiks * 16 00 00 00 12 00 00 00 02 00 00 00 00 00 00 00 00 00 datums/laiks * s p _ p e p 01 00 00 00 0B 00 73 00 70 00 f 00 72 00 65 00 70 00 datums/laiks * l c m d s & ô 6C 00 63 00 6 & 00 64 00 73 00 00 00 00 00 26 04 04 F4 & & ÿDate/Time 8. f 13 00datums/laiks * & & ¡ 00 00 00 26 04 04 00 00 00 00 00 00 26 04 04 20 a1 07datums/laiks * 00
-
Ja izpildīs šo vaicājumu attiecībā uz mērķa tabulu, iespējams, pamanīsit, ka is_replicated kolonnas vērtība tiks atzīmēta kā "1" sagrupētam indeksam, kas nav pareizs.
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
Risinājums
Šī problēma ir novērsta tālāk norādītajos kumulatīvajos SQL Server atjauninājumos:
Kumulatīvais atjauninājums 1 SQL Server 2017
Katrā jaunajā kumulatīvajā SQL Server atjauninājumā ir iekļauti visi labojumfaili un visi drošības labojumi, kas bija iekļauti iepriekšējā kumulatīvajā atjauninājumā. Skatiet jaunākos kumulatīvos atjauninājumus SQL Server:
Jaunākais SQL Server 2017 kumulatīvais atjauninājums
Statusa
Microsoft ir apstiprinājusi, ka šī problēma pastāv Microsoft produktos, kas ir norādīti sadaļā "attiecas uz".
Atsauces
Uzziniet par terminoloģiju, ko Microsoft izmanto, lai aprakstītu programmatūras atjauninājumus.