KB4013128 – PATAISYMAS: sumažėjęs našumas ir ilgai laukiama CLR_AUTO_EVENT ir CMEMTHREAD, kai SQLCLR UDT naudojamas kaip saugomas SQL RPC iškvietimo procedūros parametras

Taikoma
SQL Server 2012 Enterprise SQL Server 2012 Developer SQL Server 2012 Enterprise Core SQL Server 2012 Standard 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 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

Požymiai

Naudojate "Microsoft „SQL Server“ 2012, 2014 arba 2016" ir sukuriate vartotojo apibrėžtą tipą (UDT) naudodami "„SQL Server“ common language runtime" (SQL CLR) integraciją.

Jei naudojate UDT kaip išsaugotosios procedūros parametrą, parametras perduodamas serveriui per nuotolinio procedūros iškvietimo (RPC) mechanizmą. Šis mechanizmas viduje bando įkelti mazgą, kuriame yra UDT atmintyje.

Tokiu atveju galite pastebėti sumažėjusį išsaugotos procedūros vykdymo našumą. Taip atsitinka dėl neefektyvumo, kuris atsiranda, kai RPC be reikalo įkelia ir iškrauna SQLCLR rinkinį.

Ši problema pasireiškia ilgu CLR_AUTO_EVENT ir CMEMTHREAD tipų laukimo laiku. Tai ypač aktualu, jei keli vartotojai tuo pačiu metu vykdo tą pačią įrašytą procedūrą.

Sprendimas

Pakeitimų paketo informacija, skirta „SQL Server“

Šis naujinimas ištaisytas šiuose "„SQL Server“" pakeitimų paketuose:

"„SQL Server“ 2016" 2 pakeitimų paketas

3 pakeitimų paketas, skirtas „SQL Server“ 2014

4 pakeitimų paketas, skirtas „SQL Server“ 2012

Apie "„SQL Server“" pakeitimų paketus:

Pakeitimų paketai yra kaupiamieji. Kiekviename naujame pakeitimų pakete yra visos ankstesniuose pakeitimų paketuose esančios pataisos ir visos naujos pataisos. Rekomenduojame taikyti naujausią pakeitimų paketą ir naujausią to pakeitimų paketo kaupiamąjį naujinimą. Prieš įdiegiant naujausią pakeitimų paketą nereikia įdiegti ankstesnio pakeitimų paketo. Norėdami rasti daugiau informacijos apie naujausią pakeitimų paketą ir naujausią kaupiamąjį naujinimą, naudokite šio straipsnio 1 lentelę.

Kaip nustatyti "„SQL Server“" ir jo komponentų versiją, leidimą ir atnaujinimo lygį

Būsena

„„Microsoft““ patvirtino, kad tai yra „„Microsoft““ produktų, išvardytų dalyje „Taikoma“, problema.

Nuorodos

Sužinokite daugiau apie terminus, kuriuos „„Microsoft““ naudoja apibūdindama programinės įrangos naujinimus.