KB4577976 – OPRAVA: K blokování KOMPILACE dochází při provádění mnoha souběžných uložených procedur v SQL Server 2017 a 2019

Platí pro
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 2019 on Windows

Příznaky

Předpokládejme, že v systémech SQL Server 2017 a 2019 povolíte automatické ladění dotazů. Při spouštění mnoha souběžných uložených procedur můžete narazit na scénář blokování kompilace za následujících podmínek:

  1. Spusťte uloženou proceduru.
  2. K vynucení plánu použijte úložiště dat dotazů (QDS).
  3. Spuštěním sp_recompile uložené procedury vynutit odebrání plánu z mezipaměti procedur.
  4. Spouštějte uloženou proceduru souběžně v mnoha samostatných relacích.

Příčina

Po vynucení plánu pomocí úložiště dat dotazů a jeho odebrání z mezipaměti procedur se plán už neukládá do mezipaměti a souběžné provádění má za následek blokování kompilace.

Stav

Společnost Microsoft potvrdila, že se jedná o problém produktů Microsoft, které jsou uvedeny v sekci Platí pro.

Řešení

Tento problém je opravený v následujících kumulativních aktualizacích pro SQL Server:

Informace o kumulativních aktualizacích pro SQL Server:

Každá nová kumulativní aktualizace pro SQL Server obsahuje všechny opravy hotfix a všechny opravy zabezpečení, které byly součástí předchozí kumulativní aktualizace. Podívejte se na nejnovější kumulativní aktualizace pro SQL Server:

Reference

Podívejte se na informace o terminologii, kterou společnost Microsoft používá k popisování aktualizací softwaru.