KB5024276 - SQL Server 2019 的累积更新 20
阅读原文时间:2023年07月08日阅读:1

发布日期:

2023/4/13

版本:

15.0.4312.2

本文介绍适用于 Microsoft SQL Server 2019 的累积更新包 20 (CU20) 。 此更新包含 SQL Server 2019 累积更新 19 发布后发布的 24 个修补程序,并更新以下版本中的组件:

  • SQL Server - 产品版本:15.0.4312.2,文件版本:2019.150.4312.2

  • Analysis Services - 产品版本: 15.0.35.39,文件版本: 2018.150.35.39

问题 1

SQL Server 2019 CU14 引入了修复程序,以解决内置SESSION_CONTEXT返回的并行计划中的错误结果。 但是,当会话重置以供重用时,此修复可能会创建访问冲突转储文件。 若要缓解此问题并避免错误结果,可以禁用原始修复,并禁用内置SESSION_CONTEXT的并行度。 为此,请使用以下跟踪标志:

  • 11042 - 此跟踪标志禁用内置SESSION_CONTEXT的并行度。

  • 9432 - 此跟踪标志禁用SQL Server 2019 CU14 中引入的修补程序。

Microsoft 正在针对此问题进行修复,该修补程序将在将来的 CU 中提供。

问题二

安装 SQL Server 2019 CU19 后,使用通用 ODBC 连接器的外部数据源可能不再工作。 尝试查询在安装 CU19 之前创建的外部表时,会收到以下错误消息:

消息 7320,级别 16,状态 110,行 68

无法针对链接服务器“ (null) ”的 OLE DB 提供程序“MSOLEDBSQL”执行查询“远程查询”。 对象引用未设置为 对象的实例。

如果尝试创建新的外部表,则会收到以下错误消息:

消息110813,级别 16,状态 1,第 64 行

对象引用未设置为 对象的实例。

若要解决此问题,可以卸载 SQL Server 2019 CU19 或将 Driver 关键字 (keyword) 添加到 CONNECTION_OPTIONS 参数。 有关详细信息,请参阅 安装累积更新后通用 ODBC 外部数据源可能无法正常工作

包含有关各内部版本的摘要列表及其当前支持生命周期的 Excel 工作簿可供下载。 Excel 文件还包含SQL Server 2022、SQL Server 2019 和 2017 SQL Server的详细修复列表。 立即下载此 Excel 文件

注意: 可以通过书签直接引用下表中的各个条目。 如果你在表中选择任何 Bug 引用 ID,则 URL 中会添加“#bkmk_NNNNNNN”格式的书签标记。 然后,你可以与其他人共享此 URL,以便其可以直接跳转到表中的相应修补程序。

有关此累积更新中包含的 bug 和增强功能的详细信息,请参阅以下 Microsoft 知识库文章。

错误参考

知识库文章编号

 

说明

修复区域

组件

Platform

2204516

 

 

修复了可能导致 Analysis Services 引擎用于管理内存的内部数据结构损坏的问题。

Analysis Services

Analysis Services

Windows

2279650

 

 

修复了在多维模型中将分区重命名为同一名称后遇到的SQL Server Analysis Services (SSAS) 故障。

Analysis Services

Analysis Services

Windows

2255878

 

 

修复了 安全漏洞 CVE-2015-6420 和 CVE-2017-15708

集成服务

集成服务

Windows

2284765

 

 

修复了在输入格式与预设格式不匹配时遇到的Master Data Services (MDS) 中错误地识别月份和日期的 DateTime 问题。

Master Data Services

Master Data Services

Windows

2290381

 

 

修复了在虚拟设备接口 (VDI) 备份期间遇到的访问冲突问题(最常出现在可用性组中的数据库上)。

SQL Server引擎

备份还原

全部

2128204

 

 

修复了断言失败 (位置:interop.cpp:125;表达式:启用内存优化 tempdb 元数据时遇到的“RTL_ASSERT (nullptr != 错误) 或 (nullptr == 错误) ”。) 。

SQL Server引擎

内存中 OLTP

Windows

2268752

 

 

修复了为内存中 OLTP 数据库配置处于备用或只读模式的 SQL Server日志传送时遇到的内存泄漏问题。

注意:需要在启动期间打开跟踪标志 9953 以避免此问题。

SQL Server引擎

内存中 OLTP

全部

2251105

 

 

使用 Synapse 无服务器外部数据源运行 CREATE EXTERNAL TABLE 时,汇报 SqlBackendNotSupported 异常中返回的错误消息:

Azure Synapse无服务器 SQL 池不是受支持的数据源。

SQL Server引擎

PolyBase

全部

2285519

 

 

修复了在使用 DateTime 字段的 filter 子句查询外部表时,无法将 DateTime 字段向下推送到某些 PolyBase 通用 ODBC 外部数据源(例如 Denodo)的故障。

SQL Server引擎

PolyBase

全部

2280420

2292769

4538581

 

修复:SQL Server 2022 和 2019 中的标量 UDF 内联问题

SQL Server引擎

查询执行

全部

2162863

 

 

修复了查询 sys.dm_os_memory_objects 动态管理视图 (DMV) 时可能会遇到的访问冲突。

SQL Server引擎

查询执行

全部

2204764

 

 

修复了在执行 sys.dm_exec_query_plan_stats期间可能会遇到的访问冲突和 INVALID_POINTER_READ_c0000005_sqlmin.dll!CProfileList::FGetPartitionSummaryXML 异常。

SQL Server引擎

查询执行

Windows

2275387

 

 

修复了断言失败 (位置:bpctxt.cpp:129;表达式:在批处理模式下运行具有聚合函数的窗口查询时遇到的“m_cCreated < m_cMaxBatches”) 。

SQL Server引擎

查询执行

全部

2292999

 

 

修复了以下问题:为复杂的公共语言运行时 (CLR) 程序集运行 ALTER ASSEMBLY 命令可能会导致并行执行的其他一些命令超时。

SQL Server引擎

查询执行

全部

2112485

 

 

修复了每个 LEFT JOIN 或 RIGHT JOIN 合并后,CE) 基数估计 (统一增加,从而导致高估的问题。 当联接谓词是涉及的表的主键时,此修补程序增加了 CE 的限制。

SQL Server引擎

查询优化器

Windows

2161795

 

 

修复了断言失败 (位置:purecall.cpp:51;表达式:!”purecall“) 取消仍在运行的用户定义存储过程后遇到的。

SQL Server引擎

查询优化器

全部

2216357

 

 

为在启用查询优化修补程序(如 SELECT @sum = @sum + c FROM t)时对变量执行多个更新的语句生成一致的结果。

SQL Server引擎

查询优化器

全部

2264977

 

 

修复了自动参数化查询引起的问题,其中交错执行多语句表值函数 (MSTVF) 可能会返回错误的结果或导致首次执行时出现死锁。

SQL Server引擎

查询优化器

全部

2299078

 

 

修复了以下问题:当运行多个异步统计信息作业时, KILL STATS JOB 进程会泄漏某些项的引用计数,从而导致这些项保留在队列中, (通过 sys.dm_exec_background_job_queue) 可见,直到重启SQL Server实例。

SQL Server引擎

查询优化器

全部

2162994

 

 

修复了以下问题:在执行 sp_addsubscription 存储过程或通过服务器 A 上的“新建订阅向导”创建订阅时,链接服务器的 DataAccess 属性重置为 False :

1. 服务器 A 上为服务器 B 提供了一个链接服务器,并且已使用该链接服务器进行数据访问。
2. 将服务器 A 配置为发布服务器,将服务器 B 配置为订阅服务器并创建事务复制。

SQL Server引擎

复制

Windows

2212160

2269819

 

 

在修复之前,你仍然可以在数据库上同时启用事务复制或更改 (CDC) 和延迟持续性的数据捕获,即使事务复制或 CDC 与延迟持续性不兼容也是如此。 此修复通过返回以下错误 22891 或 22892,显式阻止你同时在数据库上启用事务复制或 CDC 和延迟持续性:

22891:无法为数据库“<DatabaseName>”启用“<FeatureName>”。 无法在设置了延迟持续性的 DB 上启用“<FeatureName>”。

22892:无法在 DB 上启用延迟持续性。 启用“<FeatureName>”时,无法在数据库上启用延迟持续性。

有关详细信息,请参阅延迟持续性和其他SQL Server功能

SQL Server引擎

复制

全部

2021114

5024352

 

修复:设置SQL Server 代理作业历史记录日志时可能会出现错误

SQL Server引擎

SQL 代理