KB4013128 - ВИПРАВЛЕННЯ: зниження продуктивності та довге очікування CLR_AUTO_EVENT і CMEMTHREAD, коли SQLCLR UDT використовується як параметр збереженої процедури для виклику RPC SQL

Застосовується до
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)

Ознаки

У Microsoft SQL Server 2012, 2014 або 2016 створюється користувацький тип (UDT) за SQL Server допомогою інтеграції загальномовного середовища виконання (SQL CLR).

Якщо ви використовуєте UDT як параметр збереженої процедури, параметр передається на сервер через механізм віддаленого виклику процедур (RPC). Цей механізм внутрішньо намагається завантажити збірку, яка розміщує UDT в пам'яті.

У цій ситуації може знизитися продуктивність виконання збереженої процедури. Це відбувається через неефективність, що виникає, коли RPC без потреби завантажує та розвантажує збірку SQLCLR.

Ця проблема проявляється у вигляді тривалого часу очікування для типів CLR_AUTO_EVENT і CMEMTHREAD . Це особливо вірогідно, якщо кілька одночасних користувачів виконують одну збережену процедуру.

Спосіб усунення проблеми

Відомості про пакет оновлень для SQL ServerSQL Server

Це оновлення виправлено в таких пакетах оновлень для SQL ServerSQL Server:

Пакет оновлень 2 для SQL ServerSQL Server 2016

Пакет оновлень 3 для SQL Server 2014

Пакет оновлень 4 для SQL ServerSQL Server 2012

Пакети оновлень для SQL Server.

Пакети оновлень накопичуються. Кожен новий пакет оновлень містить усі попередні виправлення разом із новими виправленнями. Ми радимо використовувати для них найновіший пакет оновлень і останній сукупний пакет оновлень. Інсталювати попередній пакет оновлень перед інсталяцією останнього пакета оновлень не обов'язково. Щоб дізнатися більше про останній пакет оновлень і останній сукупний пакет оновлень, скористайтеся таблицею 1 у таблиці 1 цієї статті.

Визначення версії, випуску та рівня оновлення SQL Server і його компонентів

Стан

Корпорація Microsoft підтвердила, що це одна з проблем з продуктами Microsoft, перелічених у розділі "Застосовується до".

Посилання

Дізнайтеся, за допомогою яких термінів корпорація Майкрософт описує оновлення програмного забезпечення.