Bagikan melalui


MSSQLSERVER_19419

Berlaku untuk: SQL Server

Detail

Atribut Nilai
Nama Produk SQL Server
ID Peristiwa 19419
Sumber Kejadian MSSQLSERVER
Komponen SQLEngine
Nama Simbolis HADR_AG_LEASE_EXPIRED_WAITING_FOR_RENEW
Teks Pesan Kluster Failover Windows Server tidak menerima sinyal peristiwa proses dari grup ketersediaan hosting SQL Server '%.*ls' dalam periode batas waktu sewa.

Penjelasan

Kesalahan 19419 muncul di log kesalahan SQL Server ketika pekerja sewa di sisi SQL Server tidak dijadwalkan tepat waktu untuk memproses sinyal peristiwa dari kluster. Secara khusus, SQL Server memanggil WaitForMultipleObjects() menunggu peristiwa Batas waktu sewa diatur dalam status tersinyal. Jika fungsi mengembalikan WAIT_OBJECT_0, yang menunjukkan keberhasilan, tetapi pada saat ini sewa telah kedaluwarsa, maka kesalahan 19419 dinaikkan.

Sewa adalah mekanisme komunikasi berbasis waktu yang terjadi antara SQL Server dan proses Windows Server Failover Cluster (WSFC), khususnya proses RHS.EXE. Kedua proses saling berkomunikasi secara berkala untuk memastikan proses lain berjalan dan merespons. Komunikasi ini terjadi menggunakan objek Peristiwa Windows dan memastikan bahwa failover sumber daya AG tidak terjadi tanpa sepengetahuan WSFC. Jika salah satu proses tidak merespons komunikasi sewa berdasarkan periode sewa yang telah ditentukan, terjadi habis waktu sewa. Untuk informasi selengkapnya, lihat Mekanisme Sewa. Lihat juga Cara Kerjanya: Batas Waktu Sewa AlwaysOn SQL Server

Kesalahan ini terkait dengan kesalahan batas waktu sewa lainnya dan memberikan detail yang lebih spesifik untuk kesalahan MSSQLSERVER_19407

Penyebab

Karena Peristiwa Windows adalah objek sinkronisasi ringan, ada sejumlah kecil faktor eksternal yang memengaruhinya secara negatif. Masalah umum yang dapat menyebabkan batas waktu sewa melibatkan masalah di seluruh sistem. Berikut adalah daftar kemungkinan yang dapat menyebabkan kedaluwarsa sewa dan menyebabkan hidupkan ulang atau failover:

  • Penggunaan CPU tinggi pada sistem (mendekati 100%)
  • Kondisi di luar memori - memori virtual rendah dan/atau salah satu proses sedang di-page out
  • Proses SQL Server tidak merespons saat menghasilkan cadangan memori besar
  • WSFC akan offline (misalnya karena kehilangan kuorum)

Alasan paling umum untuk kesalahan 19419 adalah CPU tinggi, yang menyebabkan keterlambatan dalam menjadwalkan utas pekerja sewa.

Tindakan pengguna

Periksa pemanfaatan CPU di server karena pekerja sewa SQL Server tampaknya kelaparan untuk sumber daya CPU. Skrip PowerShell berikut akan memungkinkan Anda mendiagnosis penggunaan CPU dengan cepat pada sistem.

 Get-Counter -Counter "\Processor(_Total)\% Processor Time" -SampleInterval 5 -MaxSamples 30 |
   Select-Object -ExpandProperty CounterSamples | Select-Object TimeStamp, Path, CookedValue

Untuk pemecahan masalah terperinci, lihat Tindakan pengguna di MSSQLSERVER_19407

  • Memecahkan masalah CPU tinggi
  • Pemecahan masalah memori rendah
  • Mengurangi atau menghindari cadangan memori besar dari SQL Server atau proses kluster
  • Periksa konfigurasi komputer virtual (VM) untuk provisi berlebih
  • Periksa migrasi atau pencadangan komputer virtual (VM) yang menyebabkan masalah