Перейти к основному содержанию

SQL Server 2019 — ошибки в накопительных обновлениях 9 и 10

Microsoft SQL Server 2019

Накопительные обновления Microsoft SQL Server 2019 CU 9 и Microsoft SQL Server 2019 CU 10 содержат ошибку в определяемых пользователем функциях (UDF), поэтому не рекомендуется их устанавливать.

Кто установил девятое или десятое обновление, выделите время на установку Microsoft SQL Server 2019 CU 11, там ошибка исправлена:

https://support.microsoft.com/en-us/topic/kb5003249-cumulative-update-11-for-sql-server-2019-657b2977-a0f1-4e1f-8b93-8c2ca8b6bef5

Если нет возможности установить одиннадцатое накопительное обновление, то можно применить превентивные меры, отключить встраивание WITH INLINE = OFF при определении второй функции или ALTER DATABASE SCOPED CONFIGURATION SET TSQL_SCALAR_UDF_INLINING = OFF на всей базе.

Информация об ошибке

https://support.microsoft.com/en-us/topic/kb4538581-fix-scalar-udf-inlining-issues-in-sql-server-2019-f52d3759-a8b7-a107-1ab9-7fbee264dd5d

Примечание: Изменения, связанные с встраиваемыми скалярными UDF в CU9, приводят к нарушению доступа, когда объект вызывает встраиваемую скалярную UDF (UDF1) со встраиваемой скалярной UDF (UDF2), используемой в качестве входного параметра:
OBJECT DEFINITION(view/UDF/TVF/procedure)

SELECT UDF1(UDF2());
Исправление будет предоставлено в будущем накопительном обновлении. Чтобы избежать этого, отключите выражение встраиваемой скалярной UDF, используя один из следующих вариантов:
- Измените определение UDF2, добавив WITH INLINE = OFF.
- Отключите встраивание в БД используя ALTER DATABASE SCOPED CONFIGURATION SET TSQL_SCALAR_UDF_INLINING = OFF.

Теги

 

Похожие материалы