Simptomai
Tarkime, kad naudojate "Microsoft SQL Server" 2016 ir "2017". Jei įgalinsite įvykio xml_deadlock_report rinkti duomenis apie aklavietes, daugelis xml_deadlock_report įvykių pateikiami vieno atskiro užklausos dėl aklavietės atsiradimo.
Sprendimas
Kaip šios problemos sprendimo būdą galite surinkti error_reported XEvent naudodami filtrą error_number = 1205 vietoj xml_deadlock_report, kaip parodyta šiame pavyzdyje:
ĮVYKIO seanso kūrimas [Deadlock_Collection] serveryje
Įvykio SqlServer.error_reported įtraukimas (
WHERE ([error_number] = (1205))
ĮTRAUKITE TIKSLINĘ package0. histogramą (SET filtering_event_name = N ' sqlserver.lock_acquired ', Source = N ' sqlserver.query_hash ')
WITH (MAX_MEMORY = 4096 KB, EVENT_RETENTION_MODE = ALLOW_SINGLE_EVENT_LOSS, MAX_DISPATCH_LATENCY = 30 SEKUNDŽIŲ, MAX_EVENT_SIZE = 0 KB, MEMORY_PARTITION_MODE = NONE, TRACK_CAUSALITY = ON, STARTUP_STATE = OFF)
EITI
Sprendimas
Ši problema išspręsta SQL serverio kaupiamajame naujinime:
Kaupiamasis naujinimas 10 SQL serverio 2017
Kaupiamasis naujinimas 2 SQL serverio 2016 SP2
PastabaNaudojant šį pataisymą, nėra xml_deadlock_report įvykiai, kai pranešama apie vidinės užklausos aklavietę, kai aklavietę galima išspręsti neužmušant gijos.
Kiekvienas naujas Kaupiamasis naujinimas, skirtas "SQL Server", yra visos karštosios pataisos ir visos saugos pataisos, kurios buvo pridėtos prie ankstesnio kaupiamojo naujinimo. Peržiūrėkite naujausius kaupiamuosius SQL serverio naujinimus:
Naujausias Kaupiamasis naujinimas, skirtas "SQL Server 2017"
Naujausias Kaupiamasis naujinimas, skirtas "SQL Server 2016"
Statusą
"Microsoft" patvirtino, kad tai yra "Microsoft" produktų, išvardytų skyriuje "taikoma", problema.
Nuorodos
Sužinokite apie terminologiją, kurią "Microsoft" naudoja programinės įrangos naujinimams apibūdinti.