Service Packs of Future Past

Lori Edwards

Published On: March 31, 2014

Categories: SQL Server, Service Packs 0

I had the opportunity to speak at SQL Saturday Phoenix this last weekend. It was a beautiful day and I got to meet some people that I had only talked to virtually and catch up with people that I hadn't seen in awhile.

I was doing a session on statistics that I had done back in January. About a month ago, I purchased a Surface Pro and since I'd installed SQL Server 2012 on it, I thought I'd try using it for my session. The Surface worked well and everything was going great until I got to my demo. For part of the demo, I show the different ways that you can view the statistics on your tables and one of the methods is with the DMF sys.dm_db_stats_properties. That DMF was release in SQL Server 2008 R2 SP2 and is great because it can show you the number of modifications to a column since the last update. So, I ran the statement using that DMF and got this lovely message:

Msg 208, State 16, Level 1
Invalid object name 'sys.dm_db_stats_properties'

Needless to say, I was confused. I'd done this session on SQL Server 2012 (on my laptop) and it worked fine. I verified that it wasn't a typo. So instead of going insane (my first thought), I did a little dance, said that I would blog about what the problem was and went on with my demo.

In the back of my mind, for the rest of the session, I remained confused. Isn't SQL Server 2012 > SQL Server 2008 R2 SP2? Actually, no and that was the problem. SP2 for SQL Server 2008 R2 was actually released after SQL Server 2012 RTM. I hadn't had the chance to update my surface to SP1, so sys.dm_db_stats_properties didn't exist yet.

As a result of this, I was reminded of a couple of things. One – versions and service packs in SQL Server aren't necessarily linear. The second (and more important) is to go all the way through your session on the machine that you're using to present. I know better, but I'll cut myself some slack this time. SQL Saturday Houston should be smoother. :-)

Lori (@loriedwards) has been with SentryOne since 2013, and has recently transitioned from her role as Senior Solutions Engineer to Training Manager. She is responsible for all learning strategy and architecture, including building, executing, measuring, and evaluating training for SentryOne. Lori is also currently serving as a Director at Large for PASS. Lori shares tips and tidbits for DBAs picked up over years of working as a DBA, as well as stories about her job here. Whether you are a new DBA who wants to learn or someone interested in learning about what it is like to work for SentryOne, be sure to check out Lori’s blog.