2023-10-10: sp_Blitz Runs with Lower Permissions, sp_BlitzCache Checks for Duplicate Plans
The last couple of releases have focused on running sp_Blitz with limited permissions, like not being able to see inside some user databases. Those efforts continue this month with a lot of work from Montro1981.
To get the new version:
- Download the updated FirstResponderKit.zip
- Azure Data Studio users with the First Responder Kit extension: ctrl/command+shift+p, First Responder Kit: Import.
- PowerShell users: run Install-DbaFirstResponderKit from dbatools
- Get The Consultant Toolkit to quickly export the First Responder Kit results into an easy-to-share spreadsheet
Consultant Toolkit Changes
I updated it to this month’s First Responder Kit, but no changes to querymanifest.json or the spreadsheet. If you’ve customized those, no changes are necessary this month: just copy your spreadsheet and querymanifest.json into the new release’s folder.sp_Blitz Changes
- Enhancement: now automatically skips MSDB checks in environments where you don't have permissions for MSDB. (#3355, thanks Montro1981.)
- Fix: won't error out if you don't have permissions to view traces. (#3326, thanks Montro1981.)
- Fix: better detection of whether you have permissions in the model database. (#3334, thanks Montro1981.)
- Fix: more clear explanation of what sp_Blitz's @debug parameter does. (#3348, thanks Montro1981.)
- Fix: skip DBCC DBINFO calls correctly. (#3350, thanks Montro1981.)
- Fix: better checking of permissions on sp_validatelogins, xp_regread, and xp_readerrorlog. (#3356, thanks Montro1981.)
sp_BlitzCache Changes
New @sortorder = 'duplicate' shows the queries with the most cached plans. Here's an example of the output:This one's a little tricky: the result set IS the top X queries with the most duplicated plans in cache, however, the list isn't sorted by that. It's sorted by CPU by default. Also:
- Fix: when using @sortorder = 'all', avg spills were being saved to table as 'avg grant'. (#3331, thanks eschnepel.)
- Fix: reduce likelihood that sp_BlitzCache's global temp tables will disappear while the proc is prepping to run. (#3342)
- Fix: single-use plans were reporting over 100% if you were running the exact same code in multiple databases. (#3353)
- Fix: case sensitive collations would fail due to different variable casing for @MinimumExecutionCount. (#3368, thanks Mark Keyworth and Montro1981.)
sp_BlitzFirst Changes
- Fix: if you took a 1-second sample of waits, you could get a divide by zero error. (#3370, thanks Montro1981.)
sp_BlitzLock Changes
- Enhancement: new check for deadlocks with background processes. (#3329, thanks Erik Darling.)
- Fix: don't tell people to enable RCSI if it's already enabled. (#3347, thanks Erik Darling.)
For Support
When you have questions about how the tools work, talk with the community in the #FirstResponderKit Slack channel. Be patient: it's staffed by volunteers with day jobs. If it's your first time in the community Slack, get started here.When you find a bug or want something changed, read the contributing.md file.
When you have a question about what the scripts found, first make sure you read the "More Details" URL for any warning you find. We put a lot of work into documentation, and we wouldn't want someone to yell at you to go read the fine manual. After that, when you've still got questions about how something works in SQL Server, post a question at DBA.StackExchange.com and the community (that includes me!) will help. Include exact errors and any applicable screenshots, your SQL Server version number (including the build #), and the version of the tool you're working with.