As of July 29, 2019, there have been eighteen Cumulative Updates (CU) for the Service Pack 2 branch of SQL Server 2014. There have been a large number of hotfixes in most of these cumulative updates. SP2 CU18 is the final CU for SQL Server 2014 SP2, since SQL Server 2014 fell out of Mainstream Support on July 9, 2019.
If you are running on the SQL Server 2014 SP2 branch, I really think you should be running the latest SQL Server 2014 SP2 Cumulative Update. In fact, if you are on SQL Server 2014, you should actually be on the SP3 branch, on the final CU, which is SP3 CU4.
Table 1 shows the SQL Server 2014 SP2 CU builds that have been released.
Build | Description | Release Date |
12.0.5511 | SP2 CU1 | August 25, 2016 |
12.0.5522 | SP2 CU2 | October 17, 2016 |
12.0.5538 | SP2 CU3 | December 19, 2016 |
12.0.5540 | SP2 CU4 | February 21, 2017 |
12.0.5546 | SP2 CU5 | April 17, 2017 |
12.0.5553 | SP2 CU6 | July 17, 2017 |
12.0.5556 | SP2 CU7 | August 28, 2017 |
12.0.5557 | SP2 CU8 | October 16, 2017 |
12.0.5563 | SP2 CU9 | December 18, 2017 |
12.0.5571 | SP2 CU10 | January 16, 2018 |
12.0.5579 | SP2 CU11 | March 19, 2018 |
12.0.5589 | SP2 CU12 | June 18, 2018 |
12.0.5590 | SP2 CU13 | August 27, 2018 |
12.0.5600 | SP2 CU14 | October 15, 2018 |
12.0.5605 | SP2 CU15 | December 12, 2018 |
12.0.5626 | SP2 CU16 | February 19, 2019 |
12.0.5632 | SP2 CU17 | April 16, 2019 |
12.0.5687 | SP2 CU18 | July 29, 2019 |
Table 1: SQL Server 2014 SP2 CU Builds
You can follow the KB article link below to see all of the CU builds for the SQL Server 2014 RTM, SQL Server 2014 SP1, SQL Server 2014 SP2, and SQL Server 2014 SP3 branches.
Like I have done for other versions and branches of SQL Server, I decided to scan the hotfix list for all of the Cumulative Updates in the SP2 branch, looking for performance and general reliability-related fixes for the SQL Server Database Engine. I came up with the list below, but this listing is completely arbitrary on my part. You may come up with a completely different list, based on what specific SQL Server 2014 features you are using.
Here are the fixes in the SP2 branch:
SQL Server 2014 SP2 Cumulative Update 1 (Build 12.0.5511), 39 total public hot fixes
FIX: Incorrect results when you use a LIKE operator and an “ss” wildcard in SQL Server 2014 or 2016
FIX: Memory leak on the AlwaysOn secondary replica when change tracking is enabled in SQL Server
“The log backup chain is broken” error when the log backup process fails in SQL Server
FIX: Error 1478 when you add a database back to the AlwaysOn availability group in SQL Server
FIX: Service Broker UCS task leaks memory in SQL Server 2014
Operating system error 32 when you restore a database in SQL Server 2014
SQL Server 2014 SP2 Cumulative Update 2 (Build 12.0.5522), 17 total public hot fixes
SQL Server 2012 crashes with an access violation when you use the TRY…CATCH construct for bulk copy
FIX: Queries that use CHANGETABLE use much more CPU after you install SQL Server 2014 SP1 CU6
FIX: Cannot uninstall service packs for SQL Server 2014 after a cumulative update is installed
A memory leak occurs when you use Azure Storage in SQL Server 2014 or 2016
SQL Server 2014 SP2 Cumulative Update 3 (Build 12.0.5538), 37 total public hot fixes
FIX: Deadlock causes deferred transaction on the secondary replica in an Always On environment
A memory leak occurs when you use Azure Storage in SQL Server 2014 or 2016
Unexpected growth of tempdb data files when using SQL Server Service Broker
Updates to DBCC CLONEDATABASE functionality in SQL Server 2014
FIX: Queries that run against secondary databases always get recompiled in SQL Server
FIX: No automatic failover after database mirroring stops unexpectedly in SQL Server 2012 or 2014
SQL Server 2014 SP2 Cumulative Update 4 (Build 12.0.5540), 25 total public hot fixes
FIX: Memory is paged out when columnstore index query consumes lots of memory in SQL Server 2014
FIX: An Always On secondary replica goes into a disconnecting state
FIX: Cannot connect to a named instance after failover on a mirror server in SQL Server 2016 or 2014
FIX: Fails to execute the DBCC CLONEDATABASE command on an in-place upgrade instance of SQL Server
SQL Server 2014 SP2 Cumulative Update 5 (Build 12.0.5546), 24 total public hot fixes
Update improves handling of documents too large for Full-Text Search indexing in SQL Server
FIX: Many HkHostLogCheckpointRecord() messages are logged in the SQL Server error log
SQL Server 2014 SP2 Cumulative Update 6 (Build 12.0.5553), 29 total public hot fixes
FIX: Change Data Capture stops working after a recent cumulative update for SQL Server is installed
Update adds the “CLR strict security” feature to SQL Server 2016
FIX: An access violation occurs when you create an index with page compression in SQL Server
FIX: Fails to resume a suspended availability database after a write error in SQL Server 2014
FIX: Unable to drop stored procedure execution article from P2P publication in SQL Server 2014
FIX: Timeout error when you backup a large database to URL in SQL Server 2014
FIX: Error 574 when you try to install Service Pack 2 for SQL Server 2014
FIX: “Non-yielding Scheduler” condition occurs on spinlock contention in Microsoft SQL Server 2014
SQL Server 2014 SP2 Cumulative Update 7 (Build 12.0.5556), 12 total public hot fixes
FIX: “Non-yielding Scheduler” condition occurs for query with many expressions in SQL Server 2014
FIX: Access violation for spatial datatypes query via linked server in SQL Server 2014
SQL Server 2014 SP2 Cumulative Update 8 (Build 12.0.5557), 8 total public hot fixes
FIX: Warning and incorrect computed column results after applying hotfix 3213683 and trace flag 176
FIX: Change tracking manual cleanup fails with table non-existence error in SQL Server 2014 and 2017
SQL Server 2014 SP2 Cumulative Update 9 (Build 12.0.5563), 8 total public hot fixes
FIX: “Invalid comparison due to NO COLLATION” retail assert occurs in SQL Server 2014
FIX: Error when you rebuild a single partition of an index online in SQL Server 2014
SQL Server 2014 SP2 Cumulative Update 10 (Build 12.0.5571), 5 total public hot fixes
FIX: Intermittent 9004 error when a backup is restored with Standby Mode in SQL Server 2014
SQL Server 2014 SP2 Cumulative Update 11 (Build 12.0.5579), 10 total public hot fixes
FIX: It takes a long time to restore a TDE encrypted database backup in SQL Server
FIX: AG failover occurs after a latch time-out when you use SQL Server 2014
FIX: Significantly increased PAGELATCH_EX contentions in sys.sysobjvalues in SQL Server 2014
FIX: SQL Server does not detect a deadlock condition when you run a merge statement
SQL Server 2014 SP2 Cumulative Update 12 (Build 12.0.5589), 16 total public hot fixes
FIX: Database can’t be dropped after its storage is disconnected and reconnected in SQL Server
FIX: A memory leak occurs in sqlwepxxx.dll causes the WmiPrvSe.exe process to crash
FIX: Worker thread hangs after another thread is aborted when running a parallel query in SQL Server
SQL Server 2014 SP2 Cumulative Update 13 (Build 12.0.5590), 4 total public hot fixes
FIX: Access violation when you query the sysmembers system table in SQL Server
SQL Server 2014 SP2 Cumulative Update 14 (Build 12.0.5600), 6 total public hot fixes
SQL Server 2014 SP2 Cumulative Update 15 (Build 12.0.5605), 7 total public hot fixes
FIX: Intermittent failures when you back up to Azure storage from SQL Server
FIX: I/O errors on a BPE file causes buffer time out in SQL Server
FIX: Internal error messages when you update a FILESTREAM tombstone system table in SQL Server
FIX: Out of memory error occurs when Database Node Memory (KB) drops below 2% in SQL Server 2014
FIX: “Non-yielding” error occurs when there is a heavy use of prepared statements in SQL Server 2014
SQL Server 2014 SP2 Cumulative Update 16 (Build 12.0.5626), 3 total public hot fixes
FIX: Assertion occurs when a parallel query deletes from a Filestream table
FIX: Filtered index may be corrupted when you rebuild index in parallel in SQL Server 2014
SQL Server 2014 SP2 Cumulative Update 17 (Build 12.0.5632), 3 total public hot fixes
FIX: Fail to join the secondary replica if the database has a defunct filegroup in SQL Server 2014
SQL Server 2014 SP2 Cumulative Update 18 (Build 12.0.5687), 4 total public hot fixes
The reason that I put these lists together is that I want to convince more people to try to keep their SQL Server instances up to date with Cumulative Updates. If you do the proper testing, planning and preparation, I think the risks from installing a SQL Server Cumulative Update are quite low (despite the occasional issues that people run into).
If you install a Cumulative Update or Service Pack on a Production system the day it is released, after doing no testing whatsoever, and then run into problems (and don’t have a plan on how to recover), then I don’t have that much sympathy for you.
On the other hand, if you go through a thoughtful and thorough testing process, and you have a plan for how you will install the CU, and how you would recover if there were any problems, then you are much less likely to have any problems. You are also much more likely to avoid the issues that are fixed by all of the included fixes in the new build of SQL Server. You have done your job as a good DBA.
Finally, Microsoft has changed their official guidance about whether you should install SQL Server Cumulative Updates. As they say, “we now recommend ongoing, proactive installation of CU’s as they become available”.
2 thoughts on “Performance and Stability Related Fixes in Post-SQL Server 2014 SP2 Builds”
Interesting. Thanks for putting this together. I didn’t realize that there were this many serious issues since SP2 was released.
Microsoft has fixed a lot of issues since SP2. Trying to stay relatively current is a good idea, and is what Microsoft explicitly recommends.