KB5008996 - Cumulative Update 15 for SQL Server 2019
Release Date:
1/27/2022
Version:
15.0.4198.2
Summary
This article describes Cumulative Update package 15 (CU15) for Microsoft SQL Server 2019. This update contains 36 fixes that were issued after the release of SQL Server 2019 Cumulative Update 14, and it updates components in the following builds:
-
SQL Server - Product version: 15.0.4198.2, file version: 2019.150.4198.2
-
Analysis Services - Product version: 15.0.35.22, file version: 2018.150.35.22
Known issues in this update
SQL Server 2019 CU14 introduced a fix to address wrong results in parallel plans returned by built-in SESSION_CONTEXT. However, this fix could cause Access Violation dump files while resetting the SESSION for reuse. To mitigate this issue, you can disable the original fix, and disable the parallelism for built-in SESSION_CONTEXT to avoid wrong results. To do this, use the following trace flags:
-
11042 - This trace flag disables the parallelism for built-in SESSION_CONTEXT.
-
9432 - This trace flag disables the fix introduced in SQL Server 2019 CU14.
Microsoft is working on a fix for this issue that will be available in a future CU.
Improvements and fixes included in this cumulative update
A downloadable Excel workbook that contains a summary list of builds, together with their current support lifecycle, is available. The Excel file also contains detailed fix lists for SQL Server 2019 and SQL Server 2017. Click to download this Excel file now.
Note: Individual entries in the following table can be referenced directly through a bookmark. If you select any bug reference ID in the table, a bookmark tag is added to the URL by using the "#bkmk_NNNNNNNN" format. You can then share this URL with others so that they can jump directly to the desired fix in the table.
For more information about the bugs that are fixed and enhancements that are included in this cumulative update, see the following Microsoft Knowledge Base articles.
Bug reference |
KB article number |
Description |
Fix area |
Platform |
|
---|---|---|---|---|---|
Fixes an issue where AVERAGEX(CURRENTGROUP()) function returns the incorrect result that is close to 0 unless you add 0.0 to the measure in the DAX query |
Analysis Services |
Windows |
|||
Fixes an issue where the tooltip of column name doesn't display in SQL Server 2019 Master Data Services (MDS) |
Data Quality Services (DQS) |
Windows |
|||
Fixes an issue about inconsistent data if you add a date that is between last day of 1899 and first day of March 1900 in the MDS add-in for Excel in SQL Server 2019 |
Data Quality Services (DQS) |
Windows |
|||
5010555 |
Improvement: Add the usage of signed certificates with multiple DNS names |
High Availability |
All |
||
Adds improvement to capture sp_server_diagnostics XEvent in an AlwaysOn_health XEvent session when STATE is 3 (ERROR) to diagnose HADR Health Events |
High Availability |
Windows |
|||
Adds the Reverting progress to SQL Server error logs in SQL Server 2019 just like the Recovery progress |
High Availability |
Windows |
|||
Fixes an issue where assertion failure on secondary replica when you use Always On availability groups in high-latency networks in SQL Server 2019. You may see this assert failure in the error log: Assertion: File: <"e:\\b\\s3\\sources\\sql\\ntdbms\\storeng\\dfs\\trans\\lsnlocmap.cpp">, line=358 Failed Assertion = 'pos - pndx < map->EntryCount' |
High Availability |
All |
|||
Fixes an error that occurs after a failover of a Distributed Availability Group that attempts to connect to the secondary AG listener with application intent set to READ ONLY |
High Availability |
Windows |
|||
Fixes the following insufficient memory error that occurs during In-Memory Online Transactional Processing (OLTP) if application native procedures update tables that have Large Object (LOB) columns and do not specify the LOB column in the UPDATE list: <DateTime> Disallowing page allocations for database 'Retail' due to insufficient memory in the resource pool 'IMOLTP'. |
In-Memory OLTP |
All |
|||
Fixes an issue where Distributed Replay Client may fail with an unhandled exception. This fix is for the Distributed Replay Client that is released with SQL Server 2019. The following is the error you may observe in the output/log file:
DateTime OPERATIONAL [Common] Unhandled exception is encountered. [Exception Code = 3221225477] |
Management Tools |
Windows |
|||
Fixes an issue where the Shrink Database task in maintenance plans doesn't work in SQL Server 2019 |
Management Tools |
Windows |
|||
Fixes an issue where Cumulative Update (CU) patching fails with the following message when you set default data directory to Azure Blob Storage URL: The given path's format is not supported. Exception Type "System.NotSupportedException" Note To work around the issue, you can change the data default directory to a local directory and rerun the SQL patch. |
Setup & Install |
Windows |
|||
5010234 |
FIX: Buffer overruns when data buffer spans multiple SNI packets |
SQL Connectivity |
Windows |
||
5010246 |
Improvement: Add 1 (true) and 0 (false) as valid values to mssql-conf Boolean settings |
SQL Engine |
Linux |
||
5008647 |
Improvement: Add mssql-conf and adutil utilities to SQL Server 2019 |
SQL Engine |
Linux |
||
Adds an improvement to enhance the security of machine keys by enabling you to change the default machine key location to a custom location by using SQL Platform Abstraction Layer (PAL) encryption settings. |
SQL Engine |
Linux |
|||
5010653 |
FIX: Database corruption after creating an external library in SQL Server 2019 |
SQL Engine |
All |
||
Adds improvement in capturing memory dumps on unexpected crashes in SQL Server 2019 on Linux |
SQL Engine |
Linux |
|||
Fixes an issue where different conversion results are displayed in publisher and subscriber database tables when using the ASCII function to convert a column. For more information, see ASCII function returns different results in Publisher and Subscriber database tables. |
SQL Engine |
Windows |
|||
Fixes an issue where the default trace on Linux rolls over before the limit size of 20 MB |
SQL Engine |
Linux |
|||
Fixes an issue where a filtered index becomes corrupted after you drop a computed column on the same table, and the filtered index corruptions are reported as 8951 and 8955 errors when you run DBCC CHECKTABLE WITH EXTENDED_LOGICAL_CHECKS |
SQL Engine |
Windows |
|||
Fixes an issue where java.nio.BufferOverflowException error occurs when using PolyBase external tables to query data from Hadoop. Note This error occurs when querying from a file that has columns of type varchar or nvarchar with a width greater than 256 characters. |
SQL Engine |
All |
|||
Fixes the memory release issue in execution of the STDistance spatial method while using spatial index. Before the fix, memory usage of MEMORYCLERK_SOSNODE gradually grew until all the memory available is taken. Note This fix requires that trace flag 8119 be in effect. You can enable the flag through DBCC TRACEON. However, we recommend that you apply it as a startup parameter so that it is not removed when SQL Server restarts. |
SQL Engine |
Windows |
|||
Fixes an issue where the dm_db_page_info function may record spurious corrupted pages entries in the suspect_pages table when calling the function against the transaction log file |
SQL Engine |
Windows |
|||
Fixes an issue where the output of sp_pkeys KEY_SEQ column doesn't conform to the ordering of columns defined in the Primary Key |
SQL Engine |
Windows |
|||
Fixes a committed memory accounting issue, which under some circumstances, FAIL_PAGE_ALLOCATION error could occur a few days after starting SQL Server services on Linux |
SQL Engine |
Linux |
|||
Fixes an access violation that occurs when you use FileTable in SQL Server 2019 |
SQL Engine |
Windows |
|||
Fixes the access violation sqldk!StringVPrintfWorkerW that occurs during the compilation of the query for Dynamic Management Views (DMVs) sys.dm_os_ring_buffers |
SQL Engine |
Windows |
|||
Fixes a system-wide low memory issue that occurs when SQL Server commits memory above the maximum server memory under the memory model with the Lock Pages In Memory. Note You should install startup trace flag 8121 to enable this fix. |
SQL Engine |
Windows |
|||
Fixes the following error that occurs when you back up a database by using virtual device interface (VDI) on ubuntu docker container installed SQL Server 2019: Host_515697bb-6009-4018-b373-50c871ed736c_SQLVDIMemoryName_0: ClientBufferAreaManager::SyncWithGlobalTable: Open(hBufferMemory): error 2Host_515697bb-6009-4018-b373-50c871ed736c_SQLVDIMemoryName_0: TriggerAbort: invoked: error 0Host_515697bb-6009-4018-b373-50c871ed736c_SQLVDIMemoryName_0: TriggerAbort: ChannelSem: error 2Features returned by SQL Server: 0x10000 Opening the device. |
SQL Engine |
Linux |
|||
5009753 |
SQL performance |
All |
|||
Fixes the following error 104 that occurs when you use scalar User-Defined Function (UDF) lnlining in the ORDER BY clause during the query compilation that has a UNION operator: Msg 104, Level 16, State 1, Line <LineNumber> |
SQL performance |
All |
|||
Fixes an assertion in CQPOnDemandTask::ExecuteQPJob if auto async update statistics is enabled. You may see this assert failure in the error log: Assertion: File: <sosmemobj.cpp>, line=2774 Failed Assertion = 'pvb->FLargeAlloc () == FALSE' |
SQL performance |
Windows |
|||
Fixes an issue where the specific statement for compilation in stored procedures seems "stuck" and shows sqlsource_transform until manual intervention |
SQL performance |
Windows |
|||
Fixes a parallel query executing in batch mode that may cause an access violation and memory dump after installing CU 14. |
SQL performance |
Windows |
|||
Fixes an access violation that occurs in CXPort::Close after you use SQL Server 2019 Cumulative Update 14 (CU14) |
SQL performance |
Windows |
How to obtain or download this or latest cumulative update package
The following update is available from the Microsoft Download Center:
Download the latest cumulative update package for SQL Server 2019 now
Notes:
-
Microsoft Download Center will always present the latest SQL Server 2019 CU release.
-
If the download page does not appear, contact Microsoft Customer Service and Support to obtain the cumulative update package.
The following update is available from the Microsoft Update Catalog:
Download the cumulative update package for SQL Server 2019 CU 15 now
Notes:
-
Microsoft Update Catalog contains this SQL Server 2019 CU and previously released SQL Server 2019 CU releases.
-
This CU is also available through Windows Server Update Services (WSUS).
-
We recommend that you always install the latest cumulative update that is available
To update SQL Server 2019 on Linux to the latest CU, you must first have the Cumulative Update repository configured. Then, update your SQL Server packages by using the appropriate platform-specific update command.
For installation instructions and direct links to the CU package downloads, see the SQL Server 2019 Release Notes.
To upgrade Microsoft SQL Server 2019 Big Data Clusters (BDC) on Linux to the latest CU, see the Big Data Clusters Deployment Guidance.
Starting in SQL Server 2019 CU1, you can perform in-place upgrades for Big Data Clusters from the production supported releases (SQL Server 2019 GDR1). For more information, see How to upgrade SQL Server Big Data Clusters.
For additional information, see the Big Data Clusters release notes.
File information
You can verify the download by computing the hash of the SQLServer2019-KB5008996-x64.exe file via the following command:
certutil -hashfile SQLServer2019-KB5008996-x64.exe SHA256
File name |
SHA256 hash |
---|---|
SQLServer2019-KB5008996-x64.exe |
503A17BDCACD1E02FF1E6EE673E6F1EEDB0DAF674CAF4FAFFE607FDC4D230190 |
A downloadable Excel workbook that contains a summary list of builds, together with their current support lifecycle, is available. The Excel file also contains detailed fix lists for SQL Server 2019 and SQL Server 2017. Click to download this Excel file now.
The English version of this package has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.
x64-based versions SQL Server 2019 Analysis Services
SQL Server 2019 Database Services Common Core
SQL Server 2019 sql_dreplay_client
SQL Server 2019 sql_dreplay_controller
SQL Server 2019 Database Services Core Instance
SQL Server 2019 Database Services Core Shared
SQL Server 2019 sql_extensibility
SQL Server 2019 Full-Text Engine
SQL Server 2019 sql_inst_mr
SQL Server 2019 Integration Services
SQL Server 2019 sql_polybase_core_inst
SQL Server 2019 sql_shared_mr
SQL Server 2019 sql_tools_extensions
|
Notes for this update
To apply this cumulative update package, you must be running SQL Server 2019.
You might have to restart the computer after you apply this cumulative update package.
To use one of the hotfixes in this package, you do not have to make any changes to the registry.
This article also provides the following important information:
Analysis Services CU build version
Beginning in Microsoft SQL Server 2017, the Analysis Services build version number and SQL Server Database Engine build version number do not match. For more information, see Verify Analysis Services cumulative update build version.
Cumulative updates (CU)
-
Each new CU contains all the fixes that were included with the previous CU for the installed version of SQL Server.
-
SQL Server CUs are certified to the same levels as service packs, and should be installed at the same level of confidence.
-
We recommend ongoing, proactive installation of CUs as they become available according to these guidelines:
-
Historical data shows that a significant number of support cases involve an issue that has already been addressed in a released CU.
-
CUs may contain added value over and above hotfixes. This includes supportability, manageability, and reliability updates.
-
-
We recommend that you test SQL Server CUs before you deploy them to production environments.
When you deploy an update to a hybrid environment (such as AlwaysOn, replication, cluster, and mirroring), we recommend that you refer to the following articles before you deploy the update:
-
SQL Server failover cluster rolling update and service pack process
Notes: If you do not want to use the rolling update process, follow these steps to apply an update:
-
Install the update on the passive node.
-
Install the update on the active node (requires a service restart).
-
-
Upgrade and update of availability group servers that use minimal downtime and data loss
Note: If you enabled AlwaysOn together with SSISDB catalog, see the information about SSIS with AlwaysOn for more information about how to apply an update in these environments.
-
How to apply a hotfix for SQL Server in a transactional replication and database mirroring topology
-
How to apply a hotfix for SQL Server in a replication topology
SQL Server CUs are currently multilingual. Therefore, this CU package is not specific to one language. It applies to all supported languages.
One CU package includes all available updates for all SQL Server 2019 components (features). However, the cumulative update package updates only those components that are currently installed on the SQL Server instance that you select to be serviced. If a SQL Server feature (for example, Analysis Services) is added to the instance after this CU is applied, you must re-apply this CU to update the new feature to this CU.
If additional issues occur, or if any troubleshooting is required, you might have to create a service request. The usual support costs will apply to additional support questions and to issues that do not qualify for this specific cumulative update package. For a complete list of Microsoft Customer Service and Support telephone numbers, or to create a separate service request, go to the Microsoft support website.
How to uninstall this update
-
In Control Panel, open the Programs and Features item, and then select View installed updates.
-
Locate the entry that corresponds to this cumulative update package under SQL Server 2019.
-
Press and hold (or right-click) the entry, and then select Uninstall.
To uninstall this CU on Linux, you must roll back the package to the previous version. For more information about how to roll back the installation, see Rollback SQL Server.
References
-
Announcing updates to the SQL Server Incremental Servicing Model (ISM)
-
SQL Server Service Packs are discontinued starting from SQL Server 2017
-
Determining which version and edition of SQL Server Database Engine is running
-
Naming schema and Fix area descriptions for SQL Server software update packages
-
Description of the standard terminology that is used to describe Microsoft software updates