Pre-Release Builds of SQL Server 2016

Community Team

Published On: June 1, 2016

Categories: SQL Server 2016, SQL Server, CTPs, SQL Server Builds 0

(For information about RTM and later builds, see the main post.)

SQL Server 2016 hit GA on June 1st, 2016. Leading up to this, with a very open public preview program starting with CTP 2.0, SQL Server 2016 has been getting into a lot of hands and getting put through a lot of testing. Microsoft's Remus Rusanu (@rusanu) recently posted about why he is so excited about this release - a great read if you want some insight into how the cycle has changed:

Here are the CTP/RC builds that were public (there are others that are not public, so don't fret if you have experience with a build that's not on this list):

CTP / RC Version Release Date Build Date
RC3    13.0.1400.361       2016-04-15    2016-04-09
RC2    13.0.1300.275       2016-04-01    2016-03-26
RC1    13.0.1200.242       2016-03-18    2016-03-10
RC0    13.0.1100.288       2016-03-07    2016-02-29
3.3    13.0.1000.281       2016-02-03    2016-01-28
If you are using Filestream and upgrading to CTP 3.3 from a previous build, there is an important callout in the release notes - you'll need to disable Filestream, restart, upgrade, then re-enable Filestream.
3.2    13.0.900.73       2015-12-17    2015-12-10
3.1 refresh    13.0.801.12       2015-12-05    2015-12-01
If you're using In-Memory OLTP and are running CTP 3.1, go back to the Evaluation Center and download 3.3.
3.1    13.0.800.111       2015-11-30    2015-11-21
3.0    13.0.700.242       2015-10-29    2015-10-26
2.4    13.0.600.65       2015-09-30    2015-09-20
2.3    13.0.500.53       2015-08-28    2015-08-24
2.2 refresh    13.0.407.1       2015-07-29    2015-07-22
There was an issue around rolling upgrades for Availability Groups ( details in the Release Notes) with the initial release of CTP 2.2 on July 22nd.

If you downloaded before July 29th, and your ISO/Box files are dated July 17 (or your @@VERSION is 13.0.400.91), you'll want to download the latest and install that build (or upgrade, if you're not expecting to use a rolling upgrade of course :-) - note that I did not attempt an upgrade from 400 to 407, but I did follow the wizard through to the final go button and it seemed like it would work).

They announced the update in their blog post on the 28th, but I found downloading through the eval center still yielded the July 17 files. I alerted them of the issue and it was fixed very early in the morning on the 29th. Or maybe they were already working on it, just took a long time to propagate, etc.

2.2    13.0.400.91       2015-07-22    2015-07-16
2.1 13.0.300.44 2015-06-14 2015-06-12
2.0 2015-05-26 2015-05-21

Here is the latest output from @@VERSION:

Microsoft SQL Server 2016 (RC3) - 13.0.1400.361 (X64) 
	Apr  9 2016 01:59:22 
	Copyright (c) Microsoft Corporation
	Developer Edition (64-bit) on ...

You can always download the latest build from the Evaluation Center; it often takes a bit longer, but they will eventually also be available on MSDN Subscriber Downloads and the Visual Studio Portal.


RC3 was released today, April 15th.

As far as the database engine is concerned, there were no new objects, no new columns, and only one object changed since RC2: sys.sp_cdc_vupgrade (the change revolved around how DDL for masked columns is generated). I suspect the rest of the changes were in setup, other components (SSIS, SSAS, SSRS, PolyBase, etc.), or simple fit and finish.

This will be the last Release Candidate before RTM.

Management Studio

You can download a new preview of SSMS (labeled the "April 2016 Preview" - (13.0.14000.36) here:

This is the first public build that is based on the Visual Studio 2015 shell; the first change I noticed was the ability to use a different color theme (currently only "Blue" - the default - and "Light," but I'm sure there are more to come - confirmed in a comment here):


Ken Van Hyning (@sqltoolsguy) blogged about many of the current and several future changes, and answered many questions at the end of this post:

He also sat down for an interview with me recently:

Changes to SSMS are documented here:


RC2 (13.0.1300.275) was released on April 1st, 2016. We're winding down, but there were a number of changes between RC1 and RC2.

The most interesting thing for me here is it is the first time I noticed the complete removal of the .NET 3.5 requirement. This is awesome.

One of the most exciting announcements from the Build conference:

This will be a good alternative for anyone who used to pay $59 or installed a time-bombed Evaluation Edition for local development and testing. Simon Sabin noticed that Developer Edition is now one of the free choices during setup, which hints that this will be available through normal evaluation downloads and not exclusive to the Visual Studio Dev Essentials program:


I am relieved that Jos de Bruijn has blogged about all of the changes to In-Memory OLTP since CTP3 (so I don't have to discover and write about them myself :-)):

Three new objects were added after RC1:

name type
sys.dm_external_script_execution_stats VIEW
sys.dm_external_script_requests VIEW
sys.dm_resource_governor_external_resource_pools VIEW

Four new columns:

view name column name
sys.dm_exec_requests external_script_request_id
sys.dm_resource_governor_external_resource_pool_affinity external_pool_id
sys.resource_governor_external_resource_pool_affinity external_pool_id
sys.resource_governor_external_resource_pools external_pool_id

Four objects have changed (three of them for the new columns mentioned above; the dm_ view did not change because it is simply a SELECT * FROM OPENROWSET()):

object name character delta
sys.dm_exec_requests 28
sys.resource_governor_external_resource_pool_affinity 19
sys.resource_governor_external_resource_pools 9
sys.sp_addmergearticle 294

There are some new extended events around Stretch Database migration and authorization (see this post to see how I find these).

And finally, the following error messages are new since RC1:

message_id text
14913 Failure was injected by '%ls' transaction/function.
14915 The use of replication is not supported for table '%ls' with REMOTE_DATA_ARCHIVE enabled.
14916 Change Data Capture is not supported for table '%ls' with REMOTE_DATA_ARCHIVE enabled.
14917 The REMOTE_DATA_ARCHIVE option cannot be enabled on table '%ls' because it will exceed the maximum allowable size of %d bytes on the remote table due to an additional required system column.
16015 The index on view '%.*ls' cannot be created because the view is referencing table '%.*ls' with masked columns.
16016 Cannot add a masking function to a column used in a sparse column set.


RC1 (13.0.1200.242) was released on March 18th. Not a lot of changes here (after all, it's only been 11 days since RC0 was released). There are some changes to R support and Stretch Database, as described in the "What's New" document. There were three objects changed:

Object Name Delta in Characters Explanation
sys.index_columns 35 Added an additional filter criterion against sys.sysiscols.
sys.query_store_runtime_stats -226 Removed the enforcement that only persisted plans show runtime stats.
sys.sp_updatestats 132 Added dbo_owner as allowed role for Azure SQL Database only.

And there are 8 new error messages:

message_id text
14912 REMOTE_DATA_ARCHIVE with value set to OFF_WITHOUT_DATA_RECOVERY is not supported at table creation. Please retry using a valid option'.
14914 The edition for database '%ls' is invalid. Only the Azure SQL Stretch edition is supported as a target for Stretch database.
16013 Cannot add a masking function to a column used in a key to a fulltext index.
16014 Failed to create fulltext index because key column '%.*ls' has a masking function defined on it.
19512 The requested operation only applies to distributed availability group, and is not supported on the specified availability group '%.*ls'. Please make sure you are specifing the correct availability group name.
39026 The parameter name 'r_rowsPerRead' is specified multiple times in 'sp_execute_external_script' call. The name 'r_rowsPerRead' is reserved for specifying streaming behavior only.
39027 Parameter '%.*ls' was specified multiple times to sp_execute_external_script stored procedure.
41839 Transaction exceeded the maximum number of commit dependencies and the last statement was aborted. Retry the statement.

RC0 (13.0.1100.288) was released on March 7th, just in time for the Data Driven event on March 10th. We're getting close! You can get a feel for RC0 from First release candidate of SQL Server 2016 now available and Technical Overview: SQL Server 2016 Release Candidate 0.

CTP 3.3

Like 3.2, there were very few engine changes in CTP 3.3.

CTP 3.2

There were very few engine changes in CTP 3.2; most of the updates were specific to MDS, SSRS, Management Studio, etc. Most notable engine changes: JSON output WITHOUT_ARRAY_WRAPPER, and the cat is finally out of the bag about Basic Availability Groups. Other changes are described in this Data Platform team blog post, this post from the Reporting Services team, and in Books Online, What's New in SQL Server 2016, December Update.

CTP 3.1

CTP 3.1 was published on December 5, 2015, and was a minor release compared to 3.0 (details below), but there are some interesting additions.

CTP 3.0

CTP 3.0 was published October 29th, 2015. There are a lot of details on the SQL Server blog and in the Books Online topic "What's New in SQL Server 2016, October Update," but I've described some of the highlights for me below.

Earlier CTPs

I've combined my observations from the 2.x CTPs into a single set of tables. This is mostly just for posterity and so that if you're trying to answer a trivia question you can check here for which build a feature was introduced.

These posts are provided by the collective SentryOne team!