Setting Up SQL Server: People Still Need Help
I Like What’s Happening I wanna start off by saying that I like what Microsoft has been doing with the setup process — it made a lot of sense to add the tempdb configuration screen, and having a...
View ArticleA Common Query Error
So Many Choices When you only need stuff from a table where there’s matching (or not!) data in another table, the humble query writer has many choices. Joins In/Not In Exists/Not Exists No, this isn’t...
View ArticleWait Stats When VSS Snaps Are Slow
Deus Redux A while back I wrote about the Perils of VSS Snaps. After working with several more clients having similar issues, I decided it was time to look at things again. This time, I wanted blood. I...
View ArticleFoundational Material: Microsoft SQL Server Book and Blogs From The Past
What Did Dinosaurs Watch On TV? These are some of my favorite books and blogs from Microsoft from the way-back machine. I can’t say every bit of information is still 100% true and should be followed to...
View ArticleTall Tales From Table Variables
Secret Squirrel When you modify a table with multiple indexes, SQL Server may choose either a narrow plan, if it doesn’t think all that many rows are going to change, or a wide plan if it thinks many...
View ArticleDo You Have Tables In Your Tables?
This Isn’t A Trick Question Hopefully it’ll get you thinking about your tables, and how they’re designed. One of the most consistent problems I see with clients is around wide tables. I don’t mean data...
View ArticleWhat Kind Of Statistics Updates Invalidate Plans?
Basics If you update statistics when the underlying objects haven’t been modified, plans won’t be invalidated. That makes total sense if your statistics update doesn’t also change the statistics. But...
View ArticleFirst Responder Kit Release: What Does A Fish Know About Friday?
I know, it seems like just yesterday I was doing one of these releases. But no, it was three weeks ago. You’ve just been drunk for a really long time. You can download the updated FirstResponderKit.zip...
View ArticleLocks Taken During Indexed View Modifications
Frankenblog This post has been nagging at me for a while, because I had seen it hinted about in several other places, but never written about beyond passing comments. A long while back, Conor...
View ArticleForwarded Fetches and Bookmark Lookups
Base Table When you choose to forgo putting a clustered index on your table, you may find your queries utilizing forwarded fetches — SQL Server’s little change of address form for rows that don’t fit...
View ArticleAnnouncing SQL Server 2019
TEASE Who Let The Docs Out? Ignite must be coming up. If you head over to Microsoft’s GitHub repo, you can peruse around for stuff updated recently. Maybe you’ll create an account. Maybe you’ll start...
View ArticleCan Forced Parameterization Go Wrong?
App Like That If you’ve got the kind of application that sends bare-assed strings to SQL Server, you may end up with a weird choice. Brent will be sitting on one shoulder telling you to use Forced...
View ArticleQuirks When Working With Extended Events To Track Locks
Worse Than Mobile Browsing I have a love/hate relationship with Extended Events. Yes, they’re powerful. Yes, you can track interesting things. But they’re just not intuitive, like, 10 years on. Part of...
View ArticleOne Hundred Percent CPU
Raise Your Hand If You’ve ever wanted to play a prank on your co-workers, but just didn’t have a any ideas that didn’t involve exploding Hot Pockets. Now you have something even less safe than molten...
View ArticleA Simple Stored Procedure Pattern To Avoid
Get Yourself Together This is one of the most common patterns that I see in stored procedures. I’m going to simplify things a bit, but hopefully you’ll get enough to identify it when you’re looking at...
View ArticleThe New Lightweight Query Plan Profile Hint
Recent Updates To SQL Server 2016 and 2017 introduced a new USE HINT that lets you direct an actual execution plan to a new Extended Event, called query_plan_profile. The hint by itself doesn’t do...
View ArticleFirst Responder Kit Release: Fingers Crossed!
This is a small release just to make sure you don’t forget about us. We know you’re busy. You can download the updated FirstResponderKit.zip here. sp_Blitz Improvements #1755 – @MisterZeus added a new...
View ArticleMaking The Query Plan Profile Hint More Useful
Way Back When I blogged about the new USE HINT that logs query plans that use it to a new XE session. The use hint and session both share the same name — query_plan_profile. There are currently some...
View ArticleIndex Tuning Week: Fixing Nonaligned Indexes On Partitioned Tables
Unquam Oblite This post will not change your life, but it will help me remember something. When you decide to partition a table to take advantage of data management features, because IT IS NOT A...
View ArticleIndex Tuning Week: Missed Missing Index Opportunities
A Reminder With a new baby in the house, I often find myself comparing her to various things. Barnacles. Ham. Pugs. No, I swear, I love her. SQL Server Has A Baby, Too That baby is the optimizer, and...
View Article