sqlskills-logo-2015-white.png

Performance and Stability-Related Fixes in All SQL Server 2008 SP3 Cumulative Updates

Even though there are two newer, major releases of SQL Server available, there are still many organizations running SQL Server 2008, which was a good, solid release of the product, with many improvements over SQL Server 2005. SQL Server 2008 (and SQL Server 2008 R2) are scheduled to fall out of mainstream support on July 8, 2014, which is still quite some time in the future. If you are running SQL Server 2008, you need to be on SQL Server 2008 Service Pack 3 (Build 10.0.5500) or newer, since all previous SQL Server 2008 Service Pack Levels have been retired and are considered “unsupported service pack” levels by Microsoft. SQL Server 2008 Service Pack 3 was released on October 6, 2011, which was quite some time ago.  I made some arguments for staying current with Service Packs and Cumulative Updates here: Making the Case for Regular SQL Server Servicing

Let’s say you want some specific justification and ammunition for applying the latest SQL Server 2008 SP3 Cumulative Update, which is CU11 (Build 10.0.5840), that was released on May 20, 2013. You could read the fix-lists for each cumulative update since SP3 RTM, available from this master CU list article from Microsoft:

The SQL Server 2008 builds that were released after SQL Server 2008 Service Pack 3 was released

Or, you can start out with this filtered list (of Engine-related fixes) that I put together:

SQL Server 2008 SP3 CU1 (10.0.5766) October 17, 2011

FIX: Recovery takes longer than expected for a database in a SQL Server 2008 or in a SQL Server 2008 R2 environment

FIX: Assertion failure or other issues occur when you run a DML query against a table or view that has two indexes in SQL Server 2008 or in SQL Server 2008 R2

FIX: Size of a data file that is committed by online page compression is larger than that is committed by offline page compression in SQL Server 2008 or in SQL Server 2008 R2

FIX: High memory usage when you run Replication Snapshot Agent in SQL Server 2008 or in SQL Server 2008 R2

SQL Server 2008 SP3 CU2 (10.0.5768) November 21, 2011

FIX: CLR stored procedure returns NULL after it is recompiled in SQL Server 2008 R2

FIX: Access violation when you insert a record into a new empty partition in SQL Server 2008

SQL Server 2008 SP3 CU3 (10.0.5770) January 16, 2012

FIX: Access violation when you run a DBCC CHECKDB command against a database that contains a table that has a spatial index in SQL Server 2008 or in SQL Server 2008 R2

FIX: Access violation when a query is compiled or recompiled in SQL Server 2008 or in SQL Server 2008 R2

FIX: It takes a long time to restore a database in SQL Server 2008 R2

SQL Server 2008 SP3 CU4 (10.0.5775) March 19, 2012

FIX: “A time-out occurred while waiting for buffer latch” error when many transactions concurrently update a database in SQL Server 2008 R2 or in SQL Server 2008 if the database uses the snapshot isolation level

FIX: Transaction log backup is created even though the full backup is canceled in SQL Server 2008 or in SQL Server 2008 R2

FIX: ghost_record_count values keep increasing in SQL Server 2008 R2 or in SQL Server 2008

Improvements for the DBCC CHECKDB command may result in faster performance when you use the PHYSICAL_ONLY option

FIX: Error message when you use DTA to tune one or more queries against a database that contains many objects in SQL Server 2008 R2 or in SQL Server 2008

FIX: Backup operation fails on a SQL Server 2008 database after you enable change tracking

SQL Server 2008 SP3 CU5 (10.0.5785) May 21, 2012

FIX: Slow performance when you restore a database in SQL Server 2008 R2 or in SQL Server 2008 if CDC is enabled

FIX: SQL Server Agent job randomly stops when you schedule the job to run past midnight on specific days in SQL Server 2005, in SQL Server 2008 or in SQL Server 2008 R2

SQL Server 2008 SP3 CU6 (10.0.5788) July 16, 2012

FIX: Errors when a client application sends an attention signal to SQL Server 2008 or SQL Server 2008 R2

FIX: SQL Server 2008 R2 or SQL Server 2008 stops responding and a “Non-yielding Scheduler” error is logged

FIX: Incorrect results are returned when you run a query that uses parallelism in the query execution plan in SQL Server 2008

SQL Server 2008 SP3 CU7 (10.0.5794) September 17, 2012

FIX: Error messages when you use dtexec to execute packages in SQL Server 2008 Integration Services

FIX: SQL Server Agent job fails if you set the job schedule type as “Start automatically when SQL Server Agent starts” in SQL Server 2008 SP2, SQL Server 2008 SP3 or SQL Server 2008 R2 SP2

FIX: Poor performance when you run a query that contains correlated AND predicates in SQL Server 2008 or in SQL Server 2008 R2 or in SQL Server 2012

SQL Server 2008 SP3 CU8 (10.0.5828) November 19, 2012

FIX: Memory leak if you enable the AUTO_UPDATE_STATISTICS_ASYNC statistics option in SQL Server 2008

FIX: Large queries that modify data run slower than expected when many locks accumulate in a SQL Server 2008 R2

SQL Server 2008 SP3 CU9 (10.0.5829) January 21, 2013

FIX: Access violation when you run a query that contains many constant values in an IN clause in SQL Server 2008

SQL Server 2008 SP3 CU10 (10.0.5835) March 19, 2013

FIX: Access violation or incorrect result when you insert data into or update a new partition of a partitioned table in SQL Server 2008 R2 or SQL Server 2008

FIX: Poor performance when table-valued functions use many table variables in SQL Server 2008 R2 or SQL Server 2008

FIX: Access violation when you run DML statements against a table that has partitioned indexes in SQL Server 2008 R2, in SQL Server 2008 or in SQL Server 2012

FIX: Index size increases significantly after you rebuild the index online and RCSI is enabled in SQL Server 2008

SQL Server 2008 SP3 CU11 (10.0.5840) May 20, 2013

FIX: SQL Server may freeze when an instance of SQL Server 2012, SQL Server 2008 or SQL Server 2008 R2 is shut down

FIX: Access Violation when you use a SQL profiler to trace an RPC event class in SQL Server 2008

Most of those hotfixes seem pretty significant to me (and this is just the Engine-related subset that I picked since Service Pack 3 RTM). I strongly encourage you to start reading the hotfix list when new cumulative updates are released, because there is a lot of good information there that may convince you and your organization to stay more current with your SQL Server Cumulative Updates. Keep in mind that SQL Server Cumulative Updates are actually cumulative, so if you install one, you will get all of the fixes for all of the previous Cumulative Updates for the Service Pack that you are on.

Other articles

Imagine feeling confident enough to handle whatever your database throws at you.

With training and consulting from SQLskills, you’ll be able to solve big problems, elevate your team’s capacity, and take control of your data career.