Thursday, January 16, 2025
Google search engine
HomeData Modelling & AIPre-Release Builds of SQL Server 2016

Pre-Release Builds of SQL Server 2016

(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):

If you are using In-Memory OLTP or 32-bit SSIS, you are going to be safer performing a clean install rather than an in-place upgrade to RC0 from either SQL Server 2014 an earlier CTP. These issues are documented in the release notes.
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 13.0.200.172 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

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):

ssms-light-1

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

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:

ssms-dev-now-free-1

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

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

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.

Metadata Changes
New Objects
CTP Object
CTP 2.4 sys.dm_db_rda_schema_update_status
sys.dm_exec_query_parallel_workers
sys.sp_polybase_join_group
sys.sp_polybase_leave_group
sys.sp_rda_test_connection
sys.sp_set_session_context
sys.sp_sm_detach
sys.sp_xtp_flush_temporal_history
sys.sp_xtp_set_memory_quota
CTP 2.3 sys.dm_exec_query_optimizer_memory_gateways
sys.sp_join_polybase_group
sys.sp_leave_polybase_group
CTP 2.2 sys.database_scoped_credentials
sys.dm_global_transactions
sys.masked_columns
sys.sp_execute_external_script
New / Renamed Columns
CTP Object Column
CTP 2.4 sys.dm_exec_query_memory_grants max_used_worker_count
reserved_node_bitmap
reserved_worker_count
used_worker_count
sys.dm_os_memory_nodes target_kb
sys.dm_os_sys_info softnuma_configuration_desc
softnuma_configuration
sys.dm_pdw_nodes_exec_query_memory_grants max_used_worker_count
reserved_node_bitmap
reserved_worker_count
used_worker_count
sys.dm_pdw_nodes_os_memory_nodes target_kb
sys.dm_pdw_nodes_os_sys_info softnuma_configuration_desc
softnuma_configuration
sys.external_tables remote_object_name
remote_schema_name
sys.pdw_nodes_tables remote_data_archive_filter_predicate
sys.tables
CTP 2.3 sys.dm_db_column_store_row_group_physical_stats has_vertipaq_optimization
transition_to_compressed_state_desc
transition_to_compressed_state
sys.dm_db_xtp_checkpoint_stats bootstrap_root_file_guid
hardened_root_file_guid
hardened_root_file_watermark
idle_attempts_count
internal_error_code
serializer_kernel_time_in_ms
serializer_user_time_in_ms
time_since_last_close_in_ms
tx_segments_dispatched_count
waits_for_io_count
waits_for_new_log_count
xtp_log_bytes_consumed
sys.dm_pdw_nodes_resource_governor_resource_pools total_cpu_usage_governed_ms
renamed to
total_cpu_usage_preemptive_ms
sys.dm_pdw_nodes_resource_governor_workload_groups
sys.dm_resource_governor_resource_pools
sys.dm_resource_governor_workload_groups
CTP 2.2 sys.all_columns is_masked
sys.columns
sys.computed_columns
sys.identity_columns
sys.system_columns
sys.dm_os_memory_objects contention_factor
exclusive_access_count
partition_type
waiting_tasks_count
sys.dm_xtp_transaction_stats drop_table_memory_attempts
drop_table_memory_failures
sys.security_predicates operation
operation_desc
predicate_type
predicate_type_desc

These posts are provided by the collective SentryOne team!

RELATED ARTICLES

Most Popular

Recent Comments