Press "Enter" to skip to content

Category: Versions

Nonclustered Index Leaf Records and Null Bitmaps

Alex Stuart lays out a finding:

While testing a script that involved calculating index record size recently I was getting some confusing results depending on server version, and after some digging it appears there was a somewhat undocumented change to nonclustered index leaf page structure in SQL Server 2012.

Prior to 2012, as dicussed by Paul Randal in this 2010 blog post (which is still the top result for searching for ‘nonclustered index null bitmap’, hence this post) the null bitmap – that is, a >= 3 byte structure representing null fields in a record – was essentially present in all data pages but not the leaf pages of a nonclustered index that had no nulls in either the index key or any clustering key columns.

Read on for a demonstration using SQL Server 2008 R2 as well as SQL Server 2012.

Comments closed

SQL Server 2012 End of Support

Debbi Lyons and Vijay Kumar have a reminder for us:

While new innovations keep lighting up in the latest releases of SQL Server and Windows Server, support for older versions along with security updates will eventually end. This can lead to the potential for compliance gaps for workloads that still rely on these versions and create missed opportunities to apply innovation to business-critical workloads. SQL Server 2012 and Windows Server 2012, and 2012 R2 End of Extended support is approaching:

– SQL Server 2012 Extended Support will end on July 12, 2022.

– Windows Server 2012 and 2012 R2 Extended Support will end on October 10, 2023.

The news this week has mostly been about SQL Server 2016 ending mainstream support, but this is a bigger one. Fortunately, there’s still a year to procrastinate plan.

Comments closed

Reviewing the ConstantCare Population Report

Brent Ozar surveys the landscape:

Ever wonder how fast people are adopting new versions of SQL Server, or what’s “normal” out there for SQL Server adoption rates, hardware sizes, or numbers of databases? Let’s find out in the summer 2021 version of our SQL ConstantCare® population report.

Click through for Brent’s findings. It’s interesting to compare these against Steve Stedman’s findings, and these come with the same caveat about population.

Comments closed

Ending Mainstream Support for SQL Server 2016

Allan Hirt gives us the skinny:

Today is July 13, 2021. Besides the anniversary of Live Aid in 1985 (had to sneak a music reference in somewhere!), today marks an important date: the end of mainstream support for SQL Server 2016The last Cumulative Update was CU17 released on March 29, 2021. UPDATE: Thanks to Glenn Berry (Twitter | Blog), he pointed out that Microsoft announced that SQL Server 2016 Service Pack 3 is coming around September 2021 give or take.

Windows Server 2016 is on a similar trajectory. It is out of mainstream support on January 11, 2022 – less than six months from now.

What does this mean for you?

Read on to learn what it means.

Comments closed

A Measure of Utilization by SQL Server Version

Steve Stedman some numbers:

Here listed is the current percentages of SQL server versions running our Daily Check-up with Database Health Monitor.

Do note that the population for this is “People who use Steve Steadman’s SQL Daily Checkup product” and not organizations which use SQL Server as a whole, so it’s not wise to apply findings from the first directly onto the second. That said, it doesn’t surprise me that 2016 is the most in-use version of SQL Server in this sample. It’s a little surprising how many 2014 instances there are, but that might be related to cardinality estimator changes.

1 Comment

SQL Server 2016 Leaving Mainstream Support July 2021

Glenn Berry reminds us that time flies:

SQL Server 2016 falls out of Mainstream Support on July 13, 2021. What this means is that there won’t be any new Service Packs or Cumulative Updates released for SQL Server 2016 after that date. It is still in Extended Support until July 14th, 2026. While in Extended Support, there will still be security and critical functional updates, if any are needed. This post is about SQL Server 2016 falling out of Mainstream Support.

Read on for more information about what this means, as it’s not a situation to panic and immediately change everything.

Comments closed

Azure Synapse Analytics Supports Apache Spark 3.0

Euan Garden has some great news for us:

Starting today, the Apache Spark 3.0 runtime is now available in Azure Synapse. This version builds on top of existing open source and Microsoft specific enhancements to include additional unique improvements listed below. The combination of these enhancements results in a significantly faster processing capability than the open-source Spark 3.0.2 and 2.4.

The public preview announced today starts with the foundation based on the open-source Apache Spark 3.0 branch with subsequent updates leading up to a Generally Available version derived from the latest 3.1 branch.

It still won’t be as fast as Databricks, but it should be a good bit faster than the Spark 2 they were running.

Comments closed

New Features in R 4.1.0

The Jumping Rivers folks have some good news for us:

The stability of the base packages is a great strength of the R ecosystem: both underpinning, and contrasting with, the rapid pace at which contributed packages (CRAN, BioConductor) evolve.

Imagine introducing a new feature into the R language. Even if problems arise with the usability of that feature, it would need to be maintained until at least the next major release, by which time thousands of developers and analysts may depend upon it. Unsurprisingly, the R maintainers are exceedingly cautious when introducing new syntax.

Similarly, you should employ caution when using new syntax in your own code. If you do use syntax that was introduced in R-4.1, be aware that your code will not run on versions of R that precede this. For example, this may prevent your new analysis scripts from running on your colleague’s computer, or prevent users from installing your new package.

Given how many third-party packages have regular breaking changes, I do wish more people would follow this advice.

Getting into the meat of things, I really like the F#-style pipe in R: |> makes a lot of intuitive sense, though I do wish they had included a placeholder element with the native pipe.

Comments closed