SQL Server 2016

The below table reflects the builds released for SQL Server 2016 as well as key comments that relate to the build where appropriate.
 
The current recommended Build is 13.0.4451.0 (SP1 with CU5).
 

Patch Build Type* Released Comment
SP1_CU5 13.0.4451.0 CU 2017 Sep Contains 40+ fixes.
 
EXCEPTION_ACCESS_VIOLATION for query using sys.dm_os_memory_objects fix.
 
Access violation with query to retrieve data from a clustered columnstore index fix.
 
A memory leak may occur when you perform Process Update operations in SSAS fix.
 
Incorrect behavior when you use memory-optimized tables with “where exists” fix.
 
“Ambiguous paths” error when deploying tabular model database to Analysis Services fix.
 
Automatic seeding in Availability Groups randomly causes error 41169 fix.
 
Log chain break in the “managed_backup.fn_available_backups” table fix.
 
Assertion error occurs on the secondary replica when you resume a suspended availability database fix.
 
“The folder … does not exist” error when deleting a folder in web portal of Reporting Service fix.
 
Database mirroring failover fails with error 3456 fix.
 
SSAS crashes when you execute an MDX query that refers to a calculated member which is a child member of another hierarchy fix.
 
Backup of availability database via VSS-based application may fail fix.
 
Timeout when you back up a large database to URL fix.
 
Memory use with many databases greater than earlier versions fix.
 
Access violation occurs when you query the sys.availability_groups catalog view fix.
 
Error when you configure an Azure SQL database to subscribe a transactional publication that contains spatial indexes fix.
 
Memory spike in LSASS.EXE when you enable Basic Authentication mode in SSRS fix.
 
DBCC CHECKFILEGROUP reports false inconsistency error 5283 on a database that contains a partitioned table fix.
 
Couldn’t disable “change data capture” if any column is encrypted by “Always Encrypted” feature fix.
 
“Non-yielding Scheduler” condition occurs on spinlock contention fix.
 
SSIS package does not start when it’s run by a CLR stored procedure whose user does not have SYSADMIN permissions (requires Trace flag 4637) fix.
 
Performance drop when using In-Memory OLTP with Always On availability groups fix.
 
Query that joins a view and contains UNION ALL slow fix.
 
EXCEPTION_ACCESS_VIOLATION error when you execute the sys.sp_MScdc_capture_job stored procedure fix.
 
Indirect checkpoints on tempdb database cause “Non-yielding scheduler” error fix.
 
SQL Server Managed Backups do not run a scheduled log backup fix.
 
Improve the performance for columnstore dynamic management views “column_store_row_groups” and “dm_db_column_store _row_group_physical_stats” fix.
RTM_CU8 13.0.2213.0 CU 2017 Sep Contains 17 fixes.
 
Indirect checkpoints on tempdb database cause “Non-yielding scheduler” error fix.
 
DBCC CHECKFILEGROUP reports false inconsistency error 5283 on a database that contains a partitioned table fix.
 
“Non-yielding Scheduler” condition occurs on spinlock contention fix.
 
Access violation with query to retrieve data from a clustered columnstore index fix.
 
SSAS crashes when you execute an MDX query that refers to a calculated member which is a child member of another hierarchy fix.
 
Timeout when you back up a large database to URL fix.
 
Couldn’t disable “change data capture” if any column is encrypted by “Always Encrypted” feature fix.
 
Improve the performance for columnstore dynamic management views “column_store_row_groups” and “dm_db_column_store _row_group_physical_stats” fix.
SP1_CU4 13.0.4446.0 CU 2017 Aug This CU was also released as security update KB4019095.
 
Contains 40+ fixes.
 
SSAS crashes when a measure is added that refers to null values in Power BI fix.
 
Deadlocks occur in SSISDB when you run multiple SSIS packages fix.
 
Deadlock when you use sys.column_store_ row_groups and sys.dm_db_column_store_row_ group_physical_stats DMV with large DDL operations fix.
 
SSAS crashes when a numeric calculated column must change its encoding scheme during the ProcessRecalc phase fix.
 
“Non-yielding Scheduler” condition occurs when you change the BUCKET_COUNT value for large memory-optimized tables fix.
 
It takes a long time to perform lots of write operations on SSAS databases fix.
 
Access violation occurs when trace flag 176 enabled fix.
 
SUSER_SNAME function returns different results between SQL Server 2014 and SQL Server 2016 fix.
 
Dimension security is ignored by Power BI Desktop in SQL Server Analysis Services (Multidimensional model) fix.
 
Transaction log backup failure on the secondary replica in SQL Server Always-On Availability Groups fix.
 
An access violation occurs when you create an index with page compression fix.
 
Parallel query execution returns incorrect results for merge join operations fix.
 
Access violation with query to retrieve data from a clustered columnstore index fix.
 
“FILESTREAM feature is disabled” error when you use the FILESTREAM feature for SQL Server 2014 or 2016 in Windows 10 Creators Update fix.
 
Couldn’t truncate a partition of the partitioned table if it contains an extended or XML index fix.
 
A stored procedure may fail after an automatic failover occurs on a mirrored database fix.
 
Incorrect MDX query results if a table cross join is run on a table hierarchy member fix.
 
DMF sys.dm_db_incremental_stats_properties doesn’t show all partitions if partitioning column is set to character or binary data type fix.
 
SharePoint sites that contain the Report Viewer Web Part fail to load after you upgrade from SharePoint 2013 to 2016 in SSRS 2016 fix.
 
Assertion failure when backing up large TDE encrypted database fix.
 
SSAS crashes when you access .vmp files fix.
 
SQL Server 2016 stops responding when the “Latch_Suspend_End” extended event is incorrectly triggered fix.
 
Assertion error occurs on the secondary replica when you resume a suspended availability database fix.
 
Databases on secondary replica shows “NOT SYNCHRONIZING” status after failover fix.
 
SSAS crashes when you run a DAX or MDX query in SSAS 2016 in Tabular mode fix.
 
“EXCEPTION_INVALID_CRT_ PARAMETER” error with BULK INSERT statement fix.
 
Query with UNION ALL and a row goal may run slower fix.
 
Memory leak occurs when you use memory-optimized tables in Microsoft SQL Server 2016 Standard edition fix.
 
Cast error when you open a local mode report in SharePoint Integrated mode fix.
 
Update adds the “CLR strict security” feature fix, requires trace flag 6545.
 
Search result isn’t highlighted in SSRS 2016 report in SharePoint integrated mode fix.
 
Fail to compress the backup file when INIT and COMPRESSION option is used in a TDE enabled database fix.
 
Security Bulletin MS16-136 breaks the SSRS data source type in PowerPivot fix.
 
Change Data Capture stops working after a recent cumulative update fix.
 
Restore fails when you do backup by using compression and checksum on a TDE enabled database fix.
RTM_CU7 13.0.2210.0 CU 2017 Aug This CU was also released as security update KB4019086.
 
Contains 30+ fixes.
 
A stored procedure may fail after an automatic failover occurs on a mirrored database fix.
 
Change Data Capture stops working after a recent cumulative update fix.
 
DMF sys.dm_db_incremental_stats_properties doesn’t show all partitions if partitioning column is set to character or binary data type fix.
 
Security Bulletin MS16-136 breaks the SSRS data source type in PowerPivot fix.
 
Couldn’t disable “change data capture” if any column is encrypted by “Always Encrypted” feature fix.
 
Transaction log backup failure on the secondary replica in SQL Server Always-On Availability Groups fix.
 
Access violation with query to retrieve data from a clustered columnstore index fix.
 
Query with UNION ALL and a row goal may run slower fix.
 
Deadlocks occur in SSISDB when you run multiple SSIS packages fix.
 
Databases on secondary replica shows “NOT SYNCHRONIZING” status after failover fix.
 
SSAS crashes when an MDX query that refers to parent-child dimensions runs fix.
 
Update adds the “CLR strict security” feature fix, requires trace flag 6545.
 
Error 9004 when you try to restore a compressed backup from multiple files for a large TDE-encrypted database fix.
 
Fail to compress the backup file when INIT and COMPRESSION option is used in a TDE enabled database fix.
 
“EXCEPTION_INVALID_CRT_ PARAMETER” error with BULK INSERT statement fix.
 
Restore fails when you do backup by using compression and checksum on a TDE enabled database fix.
 
Dimension security is ignored by Power BI Desktop in SQL Server Analysis Services (Multidimensional model) fix.
SP1_CU3 13.0.4435.0 CU 2017 May Contains 50+ fixes.
 
Update enables DML query plan to scan query memory-optimized tables in parallel.
 
Restore fails when you do backup by using compression and checksum on a TDE enabled database fix.
 
DMV sys.dm_hadr_availability_group_states displays “NOT_HEALTHY” in synchronization_health_desc column on secondary replicas fix.
 
Database schema is corrupted when you restore a database from a snapshot containing change tracking-enabled tables fix.
 
SSAS 2016 fails to start if the MemoryHeapType and HeapTypeForObjects properties are set to “-1” fix.
RTM_CU6 13.0.2204.0 CU 2017 May Contains 20+ fixes.
 
Restore fails when you do backup by using compression and checksum on a TDE enabled database fix.
 
DMV sys.dm_hadr_availability_group_states displays “NOT_HEALTHY” in synchronization_health_desc column on secondary replicas fix.
 
Database schema is corrupted when you restore a database from a snapshot containing change tracking-enabled tables fix.
RTM_CU5 13.0.2197.0 CU 2017 Mar Contains 40+ fixes.
SP1_CU2 13.0.4422.0 CU 2017 Mar Contains 90+ fixes.
SP1_CU1 13.0.4411.0 CU 2017 Jan Contains 50+ fixes.

Checkpoint files grow excessively when you insert data into memory-optimized tables fix.

The “sys.dm_db_column_store _row_group_physical_stats” query runs slowly fix. The sys.column_store_segments view is replaced with the syscscolsegments view.

DMV sys.dm_os_spinlock_stats returns incorrect results after you install SQL Server 2016 RTM CU2 fix.

SQL Server crashes when you execute a spatial data query that has been compiled fix.

Always On secondary replica goes into a disconnecting state fix.

A memory leak occurs when SQL Server procedure cache consumes too much memory fix.

DMV sys.dm_hadr_availability_replica_states returns an incorrect synchronization health state fix.

The Target Recovery Time of a database set to a nonzero value causes an assertion and a lease timeout fix.

Decrease in performance and “non-yielding scheduler” errors caused by unnecessary spinlocks fix.

Cannot execute the DBCC CLONEDATABASE command on an instance of SQL Server 2016 SP1 after an in-place upgrade fix.

SSAS crashes when a numeric calculated column must change its encoding scheme during the ProcessRecalc phase fix.

SQL Server crashes when you execute the OPENJSON function in a contained database fix.

SQL Server runs out of memory when you query data from memory-optimized tables if Resource Governor is enabled fix.

Cannot save a subscription when you browse to SSRS 2016 web portal by using Internet Explorer fix.

Error when you execute an MDX query on a Tabular model database fix.

Errors are logged if database mirroring is configured by Transact-SQL fix.

Can’t change PolyBase service accounts without reinstalling the PolyBase feature fix.

Out of memory occurs when you use long Hekaton transactions fix.

Error 3628 when you create or rebuild a columnstore index fix.

Cannot install SQL Server R Services during an offline installation fix.

The file size of the PDF file generated by SSRS 2014 or 2016 is larger when compared to the earlier versions of SQL Server fix.

Errors when you try to save MDS business rules fix.

Database Mail causes high CPU usage after many email messages are sent fix.

Kernel crash when you create a database after you drop a database that contains FILESTEAM data fix.

An error occurs when you use ODBC driver to retrieve sql_variant data fix.

SSAS may crash on query execution if a predefined role is specified in the connection string fix.
RTM_CU4 13.0.2193.0 CU 2017 Jan Contains 50+ fixes.

The Target Recovery Time of a database set to a nonzero value causes an assertion and a lease timeout fix.

No automatic failover after database mirroring stops unexpectedly fix.

SSAS may crash on query execution if a predefined role is specified in the connection string fix.

TDE encrypted Databases go in suspect state during the recovery phase when you restart SQL Server fix.

DMV sys.dm_hadr_availability_replica_states returns an incorrect synchronization health state fix.

Changes to the use of histograms on UNIQUE columns improvement, requires trace flag 4199.

Can’t change PolyBase service accounts without reinstalling the PolyBase feature fix.

Rebuilding a nonclustered index to add columns by using CREATE INDEX with DROP_EXISTING=ON and ONLINE=ON causes blocking fix.

Snapshot Agent fails when you publish UDF’s to SQL Server 2016 Distributor in Transactional Replication fix.

SQL Server crashes when you execute a spatial data query that has been compiled fix.

Error 3628 when you create or rebuild a columnstore index fix.

A memory leak occurs when SQL Server procedure cache consumes too much memory fix.

SQL Server crashes when you execute the OPENJSON function in a contained database fix.

Out of memory occurs when you use long Hekaton transactions fix.

Cannot install SQL Server R Services during an offline installation fix.

DBCC CHECKFILEGROUP reports false inconsistency error 5283 on a database that contains a partitioned table fix.

Error when you execute an MDX query on a Tabular model database fix.

You can’t run a data cleanse against a view in Data Quality Services fix.

Kernel crash when you create a database after you drop a database that contains FILESTEAM data fix.

Database Mail causes high CPU usage after many email messages are sent fix.

Queries that run against secondary databases always get recompiled fix.

Checkpoint files grow excessively when you insert data into memory-optimized tables fix.

SQL Server runs out of memory when you query data from memory-optimized tables if Resource Governor is enabled fix.

Errors are logged if database mirroring is configured by Transact-SQL fix.

Unable to rebuild the partition online for a table that contains a computed partitioning column fix.
SP1 13.0.4001.0 GDR 2016 Nov Includes MS16-136

List of fixes and new enhancements can be found here.

Several Enterprise edition features are now in Standard/Web/Express and Local DB editions i.e:

  • Always Encrypted
  • Change Data Capture (not in Express or Local DB editions)
  • Columnstore
  • Compression
  • Database Snapshots
  • Dynamic Data Masking
  • Fine Grained Auditing
  • In-Memory OLTP (not in Local DB edition)
  • Multiple Filestream Containers
  • Partitioning
  • PolyBase (not in Local DB edition)
  • Row-Level Security
RTM_CU3 13.0.2186.6 CU 2016 Nov Note: CU3 was also released as MS16-136 and hence has the same build number.
MS16-136 13.0.2186.6 CU 2016 Nov For use with CU/QFE path builds 13.0.1601.5 to 3.0.2164.0
MS16-136 13.0.1722.0 GDR 2016 Nov For use with GDR path build 13.0.1601.5
RTM_CU2 13.0.2164.0 QFE 2016 Sep Contains 60+ fixes.

DML statements are unexpectedly replicated to the subscribers fix.

Incorrect results are returned when you run a query that contains a GROUP BY operation fix.

Standard edition of SQL Server 2016 Analysis Services (Tabular mode) ignores the 16 GB memory limit fix.

Query Store returns unusual characters when a JOIN operator is used fix.

A non-optimal query plan choice causes poor performance when values outside the range represented in statistics are searched fix.

Retention policy does not work when you use SQL Server Managed Backup to Windows Azure fix.

Calculation using two measure time values in iterations returns negative values fix.

Updating while compression is in progress can lead to nonclustered columnstore index corruption fix.

An access violation occurs when you use the TDE and BPE features fix.

Queries on Stretch Database enabled databases always involves a network round-trip to Azure fix.

Queries that run against secondary databases always get recompiled fix.

Error 33294 if a cursor is declared by using the OPTION (RECOMPILE) query hint fix.

A memory leak occurs when you use Azure Storage fix.

Access violation occurs when execute a query that contains many COUNT DISTINCT operations fix.

Access violation when you run a query if trace flag 4139 is enabled fix.

High CPU usage on SQL queries fix.

Change Data Capture function fn_cdc_get_net_changes_ incorrectly returns delete and update operation rows for an update operation fix.

“Cannot bulk load” error when you run a query that contains an UPDATE statement fix.

Change tracking cleanup task fails if another database is offline fix.

Adds the support to audit the information that’s collected by the SQL Server Usage Feedback Collection.

Access violation on secondary replica when there are too many parallel redo operations fix.

Affinity mask does not work correctly for NUMA nodes in SQL Server Analysis Services fix.

An error occurs when you use ODBC driver to retrieve sql_variant data fix.

Queries that contain recursive CROSS APPLY operations run slowly fix.

IntelliSense feature displays incomplete or incorrect information for AMO library fix.

Service Broker UCS task leaks memory fix.

Query runs slowly when SQL Server uses hash aggregate in the query plan fix.
RTM_CU1 13.0.2149.0 QFE 2016 Jul Contains 140+ fixes.

SQL Server 2016 uses all available memory and crashes when it runs a query that contains HASHBYTES functions fix.

Performance issues occur when using the sys.dm_hadr_availability_replica_states DMV on an AlwaysOn Availability Group that contains many databases fix.

Can’t disable batch mode sorted by session trace flag 9347 or the query hint QUERYTRACEON 9347 fix.

A memory leak occurs when DATA_CONSISTENCY_CHECK is being executed for a system-versioned temporal table fix.

Data Flush Tasks of a memory-optimized temporal table may consume 100-percent CPU usage fix.

Error 5120 when you create or use a FILESTREAM-enabled database on a dynamic disk fix.

The SEEDING_MODE setting is ignored when you add an AlwaysOn AG replica to an existing AG fix.

Cannot create or delete a table or index when another DDL transaction is running on the same database fix.

BULK INSERT or OPENROWSET import wrong data if UTF-8 encoded file does not have a BOM fix.

Running multiple UPDATE STATISTICS for different statistics on a single table concurrently improvement. Requires trace flag 7471.

Queries on Stretch Database enabled databases always involves a network round-trip to Azure fix.

SQL Server Analysis Services (SSAS) – processing a partition causes data loss on other partitions after the database is restored fix.

AUTOGROW_ALL_FILES and READ_ONLY aren’t either updated by DDL or preserved after a database restarts fix.

Adds FIPS-compliant support in SQL Server 2016 by letting the Service Broker, AlwaysOn, and Database Mirroring use the SHA256 algorithm instead of the obsolete SHA1 algorithm.

sys.dm_external_script_execution_stats returns an incorrect counter_value fix.

The .NET Framework 3.5 is required when you configure SQL Server 2016 as a secondary in Transaction Log Shipping.

SSRS logs fill up the hard disk and agent jobs are not recreated after database migration fix.

Home page of SSRS web portal becomes empty after you enable My Reports feature fix.

“HTTP 503: Service unavailable” error when you open the SSRS web portal after you upgrade to SSRS 2016 fix.

Checkpoint files are missing from sys.dm_db_xtp_checkpoint_files fix.

Query Store automatic data cleanup fails on editions other than Enterprise and Developer edition fix.

SQL Server 2016 database log restore fails with the “Hk Recovery LSN is not NullLSN” error message fix. Also requires trace flag 9958.

The full-text search feature does not always return the expected results fix.

Service Master Key initialization fails on one node of a SQL Server 2016 failover cluster fix.

Heavy concurrent OLTP activity runs slowly when delayed durability is enabled fix.

Introduces trace flag 9358 to disable batch mode sort operations in a complex parallel query.

Update to change permissions for running sp_readerrorlog and sp_enumerrorlogs.

Shared data sources and stored credentials are removed by the SharePoint daily cleanup jobs in SSRS fix.

Transactional Replication – the Log Reader Agent stops intermittently and an Access Violation occurs in SQL Server fix.

It takes a long time to compile a query and add it to the Query Store fix.

Availability databases are not fully started after you restart the server instance fix.

The ALTER SERVER CONFIGURATION with SET SOFTNUMA command does not work fix.

Incorrect page numbers are displayed when you export an SSRS report to PDF or TIFF format fix.

Canceling a backup task crashes SQL Server fix.

RTM

13.0.1601.5

2016 Jun

Evaluation Edition download EOL** (MS 2021 Oct, ES 2026 Oct)

* Build Types can be either:

SP – Service Pack (This patch is recommended to be applied if it is supported by your application and testing in a non-Production environment is successful.)

GDR – General Distribution Release (Same recommendation as a Service Pack.)

QFE – Quick Fix Engineering (Same recommendation as a Service Pack.)

** EOL – End of Life for Product

SP (Service Pack Support End Date)

MS (Mainstream Support End Date)

ES (Extended Support End Date)