Gejala
Pertimbangkan skenario berikut:
-
Misalnya Anda memiliki tabel yang dipartisi di Microsoft SQL Server dan tabel tersebut merupakan bagian dari Ubah Penangkapan Data (CDC) atau Replikasi Transaksional. Anda beralih atau beralih partisi dari tabel ini.
-
Setelah peralihan partisi saat Anda melakukan operasi Data Manipulation Language (DML), Anda mungkin melihat bahwa EXCEPTION_ACCESS_VIOLATION terjadi dan file dump memori dihasilkan.
Tanggal/Waktu ***Stack Dump dikirim ke FilePath\FileName
Date/Time SqlDumpExceptionHandler: Process ProcessID menghasilkan pengecualian fatal c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server mengakhiri proses ini. Tanggal/Waktu * ********************* Tanggal/Waktu * Tanggal/Waktu * BEGIN STACK DUMP: Date/Time * Date/Time * Date/Time * Date/Time * Tanggal/Waktu * Alamat Pengecualian = 000007FEE724BD80 Module(sqllang+00000000015BBD80) Tanggal/Waktu * Kode Pengecualian = c0000005 EXCEPTION_ACCESS_VIOLATION Tanggal/Waktu * Pelanggaran Akses terjadi alamat baca 000000000000002A Tanggal/Waktu * Penyangga Input 70 byte Tanggal/Waktu * sys.sp_MScdc_capture_job Tanggal/Waktu *Date/Time ***Stack Dump sedang dikirim ke FilePath\FileName
Date/Time SqlDumpExceptionHandler: Process PID menghasilkan pengecualian fatal c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server mengakhiri proses ini. Tanggal/Waktu * *************************** **Date/Time * Date/Time * BEGIN STACK DUMP: Date/Time * Date/TimeSPID Date/Time * Date/Time * Date/Time * Exception Address = 000007FEE9D26640 Module(sqllang+0000000001586640) Date/Time * Exception Code = c0000005 EXCEPTION_ACCESS_VIOLATION Tanggal/Waktu * Terjadi Pelanggaran Akses alamat baca 000000000000002A Tanggal/Waktu * Buffer Input 109 byte - Date/Time * 16 00 00 00 12 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 Tanggal/Waktu * s p _ r e p 01 00 00 00 0b 00 73 00 70 00 5f 00 72 00 65 00 70 00 Tanggal/Waktu * l c m d s & ô 6c 00 63 00 6d 00 64 00 73 00 00 00 00 26 04 04 f4 Tanggal/Waktu * & & ÿ 01 00 00 00 00 00 26 04 04 00 00 00 00 00 00 26 04 04 ff Tanggal/Waktu * ÿÿÿÿ ¥ & ff ff 00 00 a5 0a 00 00 00 00 00 26 04 04 8f 13 00 Tanggal /Waktu * & & } 00 00 26 04 04 00 00 00 00 00 00 26 04 04 20 a1 07 Tanggal/Waktu * 00-
Jika Anda menjalankan kueri berikut ini terhadap tabel tujuan, maka Anda mungkin melihat bahwa nilai kolom is_replicated akan ditandai sebagai '1' untuk indeks non-kluster yang tidak benar.
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
Pemecahan Masalah
Masalah ini telah diperbaiki dalam pembaruan kumulatif berikut untuk SQL Server:
Pembaruan Kumulatif 1 untuk SQL Server 2017
Setiap pembaruan kumulatif baru untuk SQL Server berisi semua hotfix dan semua perbaikan keamanan yang disertakan dengan pembaruan kumulatif sebelumnya. Lihat pembaruan kumulatif terbaru untuk SQL Server:
Pembaruan kumulatif terbaru untuk SQL Server 2017
Status
Microsoft telah mengonfirmasi bahwa ini adalah masalah pada produk Microsoft yang tercantum di bagian "Berlaku untuk".
Referensi
Pelajari tentang terminologiyang digunakan Microsoft untuk menjelaskan pembaruan perangkat lunak.