KB4563597 - PERBAIKAN: Pembuangan pernyataan dapat terjadi ketika Transaksi Implisit diaktifkan di SQL Server 2019, 2017, dan 2016

Berlaku Untuk
SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Standard on Windows SQL Server 2016 Service Pack 2 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 2019 on Windows

Gejala

Asumsikan Anda mengaktifkan Transaksi Implisit di tingkat server di Microsoft SQL Server. Anda melihat bahwa dump pernyataan berikut dibuat terus menerus:

< TanggalWaktu> spid nn * MULAI TUMPUKAN DUMP:

< TanggalWaktu> spid NN * <TanggalWaktu> spid NN

< TanggalWaktu> spid NN *

< TanggalWaktu> spid NN * Lokasi: purecall.cpp:LineNumber

< TanggalWaktu> spid NNs * Ekspresi: !" purecall"

< TanggalWaktu> spid NN * SPID: 5

< TanggalWaktu> spid NN * ID Proses: ProcessID

< TanggalWaktu> spid NN * Deskripsi: Panggilan fungsi virtual murni

…

< TanggalWaktu> spid NNs Kesalahan: 17065, Tingkat Keparahan: 16, Status: 1.

< TanggalWaktu> spid NNs SQL Server Assertion: File: <purecall.cpp>, line = LineNumber Failed Assertion = '!" purecall"' Panggilan fungsi virtual murni. Kesalahan ini mungkin terkait dengan waktu. Jika kesalahan berlanjut setelah menjalankan ulang pernyataan, gunakan DBCC CHECKDB untuk memeriksa integritas struktural database, atau mulai ulang server untuk memastikan struktur data dalam memori tidak rusak.

< TanggalWaktu> spid NNs Kesalahan: 3624, Tingkat Keparahan: 20, Status: 1.

< TanggalWaktu> spid NN Pemeriksaan pernyataan sistem telah gagal. Periksa log kesalahan SQL Server untuk detailnya. Biasanya, kegagalan pernyataan disebabkan oleh bug perangkat lunak atau kerusakan data. Untuk memeriksa kerusakan database, pertimbangkan untuk menjalankan DBCC CHECKDB. Jika Anda setuju untuk mengirim dump ke Microsoft selama penyiapan, dump mini akan dikirim ke Microsoft. Pembaruan mungkin tersedia dari Microsoft di Paket Layanan terbaru atau di Hotfix dari Dukungan Teknis.

Selain itu, Anda mungkin juga menerima pesan yang tidak menghasilkan yang menyerupai berikut ini dalam log kesalahan SQL:

< TanggalWaktu> Proses Server 0:0:0 (0x3c08) Pekerja 0x00000242BD8EA160 tampaknya tidak menghasilkan pada Penjadwal 10. Waktu pembuatan utas: 13228659375902. Perkiraan CPU Utas yang Digunakan: kernel 0 mdtk, pengguna 52312 mdtk. Pemanfaatan Proses 16%. Sistem Idle 70%. Interval: 70347 mdtk.

Status

Microsoft telah mengonfirmasi bahwa ini adalah masalah dalam produk Microsoft sebagaimana tercantum di bagian "Berlaku untuk".

Resolusi

Informasi Pembaruan Kumulatif:

Masalah ini telah diperbaiki dalam pembaruan kumulatif berikut untuk SQL Server:

Tentang pembaruan kumulatif untuk SQL Server:

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:

      

Referensi

Pelajari tentang terminologi yang digunakan Microsoft untuk menjelaskan pembaruan perangkat lunak.