Belirtiler
Microsoft SQL Server 2016 ve 2017 kullandığınızı varsayalım. Olay xml_deadlock_report kilitlenmeler için veri toplamaya olanak verirseniz, bir tek tek sorgu kilitlenme tekrarı için birçok xml_deadlock_report olayı bildirilir.
Geçici Çözüm
Bu soruna geçici bir çözüm olarak, aşağıdaki örnekte görüldüğü gibi xml_deadlock_report yerine bir filtre error_number = 1205 kullanarak error_reported XEvent 'i toplayabilirsiniz:
SUNUCUDA olay oturumu [Deadlock_Collection] oluşturma
Olay SqlServer.error_reported ekleme (
WHERE ([error_number] = (1205)))
HEDEF package0. histogram (ayarla filtering_event_name = N ' sqlserver.lock_acquired ', Source = N ' sqlserver.query_hash ')
ILE (MAX_MEMORY = 4096 KB, EVENT_RETENTION_MODE = ALLOW_SINGLE_EVENT_LOSS, MAX_DISPATCH_LATENCY = 30 SANIYE, MAX_EVENT_SIZE = 0 KB, MEMORY_PARTITION_MODE = YOK, TRACK_CAUSALITY = ON, STARTUP_STATE = KAPALı)
ALıNACAK
Çözüm
Bu sorun, SQL Server için aşağıdaki toplu güncelleştirmelerde giderilmiştir:
SQL Server 2017 için toplu güncelleştirme 10
SQL Server 2016 SP2 için toplu güncelleştirme 2
Not: Bu düzeltme ile, kilitlenme bir yazışmayı beklemeden çözülemezse, sorgu dışında kilitlenme için xml_deadlock_report olayları raporlanmaz.
Her bir SQL Server toplu güncelleştirmesi, önceki toplu güncelleştirmeyle birlikte gelen tüm düzeltmeleri ve tüm güvenlik düzeltmelerini içerir. En son SQL Server güncelleştirmelerini gözden geçirin:
Durum
Microsoft bu sorunun "Uygulandığı öğe" bölümünde listelenen Microsoft ürünlerinde bulunduğunu onaylamıştır.
Başvurular
Microsoft 'un yazılım güncelleştirmelerini açıklamak için kullandığı terminolojihakkında bilgi edinin.