Příznaky
Použijete Microsoft SQL Server 2012, 2014 nebo 2016 a vytvoříte typ definovaný uživatelem pomocí integrace modulu SQL CLR) serveru SQL Server Common Language Runtime.
Pokud UDT použijete jako parametr uložené procedury, je tento parametr předán serveru prostřednictvím mechanismu vzdáleného volání procedur (RPC). Tento mechanismus se interně pokusí načíst sestavení, které hostuje UDT v paměti.
V této situaci může dojít ke snížení výkonu spouštění uložené procedury. K tomu dochází z důvodu neefektivity způsobené tím, že RPC zbytečně načítá a uvolňuje sestavení SQLCLR.
Tento problém se projevuje dlouhými čekacími dobami u typů CLR_AUTO_EVENT a CMEMTHREAD . To platí zejména v případě, že několik souběžných uživatelů spouští stejnou uloženou proceduru.
Řešení
Informace o aktualizacích Service Pack pro SQL Server
Tato aktualizace je opravená v následujících aktualizacích Service Pack pro SQL Server:
Service Pack 2 pro SQL Server 2016
Service Pack 3 pro SQL Server 2014
Service Pack 4 pro SQL Server 2012
Informace o aktualizacích Service Pack pro SQL Server:
Aktualizace Service Pack jsou kumulativní. Každá nová aktualizace Service Pack obsahuje všechny opravy z předchozích aktualizací Service Pack společně s novými opravami. Doporučujeme použít nejnovější aktualizaci Service Pack a nejnovější kumulativní aktualizaci pro tuto aktualizaci Service Pack. Před instalací nejnovější aktualizace Service Pack není nutné instalovat předchozí aktualizaci Service Pack. Další informace o nejnovější aktualizaci Service Pack a nejnovější kumulativní aktualizaci najdete v tabulce 1 v následujícím článku.
Jak zjistit verzi, edici a úroveň aktualizace systému SQL Server a jeho součástí
Stav
Společnost Microsoft potvrdila, že se jedná o problém produktů Microsoft, které jsou uvedeny v sekci Platí pro.
Reference
Podívejte se na informace o terminologii, kterou společnost Microsoft používá k popisování aktualizací softwaru.