KB4338715 – КОРЕКЦИЯ: Много xml_deadlock_report събития се докладват за една единична поява на блокиране в рамките на заявка през SQL Server 2016 и 2017 г

Отнася се за
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 2017 Developer SQL Server 2017 Enterprise Core SQL Server 2017 Enterprise

Симптоми

Да предположим, че използвате Microsoft SQL Server 2016 и 2017. Ако разрешите на xml_deadlock_report на събитието да събира данни за блокирания, много xml_deadlock_report събития се отчитат за една единична поява на блокиране в рамките на заявка.

Заобиколно решение

Като заобиколно решение на този проблем можете да съберете error_reported XEvent, като използвате филтър error_number = 1205 вместо xml_deadlock_report, както се вижда в следния пример:

Забележка

  • СЪЗДАВАНЕ НА СЕСИЯ НА СЪБИТИЕ [Deadlock_Collection] НА СЪРВЪРА
  • ДОБАВЯНЕ sqlserver.error_reported НА СЪБИТИЕ (
  • WHERE ([error_number]=(1205)))
  • ADD TARGET package0.histogram(SET filtering_event_name=N'sqlserver.lock_acquired';source=N'sqlserver.query_hash')
  • С (MAX_MEMORY=4096 КБ EVENT_RETENTION_MODE=ALLOW_SINGLE_EVENT_LOSS,MAX_DISPATCH_LATENCY=30 СЕКУНДИ,MAX_EVENT_SIZE=0 КБ MEMORY_PARTITION_MODE=НЯМА,TRACK_CAUSALITY=ВКЛ.STARTUP_STATE=ИЗКЛ.)
  • GO

Решение

Този проблем е решен в следните кумулативни актуализации за SQL Server:

Сборна актуализация 10 за SQL Server 2017

Сборна актуализация 2 за SQL Server 2016 SP2

Забележка: С тази корекция не се докладват събития на xml_deadlock_report за блокиране в рамките на заявка, когато блокирането може да бъде разрешено без прекратяване на нишка.

За кумулативните актуализации за SQL Server:

Всяка нова кумулативна актуализация за SQL Server съдържа всички актуални поправки и корекции на защитата, които са били включени в предишната кумулативна актуализация. Прегледайте последните кумулативни актуализации за SQL Server:

Последна сборна актуализация за SQL Server 2017

Последна сборна актуализация за SQL Server 2016

Състояние

Microsoft потвърждава, че това е проблем в продуктите на Microsoft, които са изброени в раздела „Важи за“.

Справки

Научете повече относно терминологията, която Microsoft използва за описване на актуализациите на софтуера.