Hello, Grant again as Steve is on sabbatical.
My evenings and weekends are currently being used to update my SQL Server query performance book for 2025. I really enjoy it because writing the book forces me to structure my learning on SQL Server 2025, not just hit it in some slipshod manner. Plus, I've got a technical editor behind me that's going to ensure I cover things appropriately. It's all good.
But...
Earlier this week while working my way through a chapter I came across this little bit of joy:
Also, the execution time for the query went from X on average to X.
I double checked. Yep. It's in print. Page 271 of the 2022 version of the book if you're interested. I was clearly intending to measure some performance metrics and report back and just forgot. This kind of thing is just mortifying. However, it's my mistake. Thankfully, this is a tiny one, hardly going to break stuff for people. It's not like I offered up bad advice... this time. See, I've done that too. Way back, WAY back, first time I wrote a book, on SQL Server 2005 execution plans, I helped perpetuate a myth. I made a huge stink about how "Estimated" plans were just not really good. You want "Actual" plans. Problem is, in SQL Server, an execution plan is an execution plan. Oh, you can capture runtime metrics and add them to the execution plan. That's what we call an "Actual" plan. It's just a plan, same as the "Estimated" plan, but it has extra runtime metrics. Really, except for those runtime metrics, there are no differences between what we call an Actual Plan and an Estimated Plan. At the time, I didn't know enough to explain it properly. I've subsequently fixed it, but, I've got to own that mistake.
If we all owned up when we made an error, I'm sure there'd be just a little less conflict going on in the office. No one is 100% right, 100% of the time. We all fall short. I'm just old enough to have a longer list than most. Anyway, admit the error. Correct it if possible. Pick yourself up. Brush off your bruised ego, and keep going. That's how I'm going about it.