Skip to content

Releases: BrentOzarULTD/SQL-Server-First-Responder-Kit

2024-10-19: More Inclusive Language for sp_BlitzIndex

19 Oct 10:52
cf11c4e
Compare
Choose a tag to compare

The wording of all of sp_BlitzIndex's warnings is now much more clear and inclusive thanks to hard work by W. Eli Hayes and VladDBA.

When Kendra Little first wrote sp_BlitzIndex about a decade ago to help you analyze your index designs, we brainstormed about how to surface warnings. Index design is not black and white: for example, for some tables and workloads, 10 nonclustered indexes isn't a big deal, but for other tables and workloads, it's way too many and causes blocking issues. So we needed a way to talk about warnings in a fun way that indicated some professional analysis was required, and that the situation may or may not be a big deal. We settled on psychological-sounding phrases like "Index Hoarder", "Aggressive Indexes", "Abnormal Psychology", etc.

The psychological terms worked, but we had to explain 'em every time. They were more of a barrier to understanding than an enhancement. So now, your sp_BlitzIndex advice looks more like this:

Simpler, clearer, and more inclusive. Although now I gotta go re-record all my index training, hahaha! I'll work on that after the Black Friday sales finish.

To get the new version:

Consultant Toolkit Changes

Updated to this month's First Responder Kit, but no changes to the spreadsheet template. In case you haven't upgraded in a few months, you're probably upgrading now because your old version has expired, so here's what we did in May because the changes were pretty big:
  • Supports Microsoft Entra multi-factor authentication (MFA)
  • Automatically retries failed connections, allowing you to more easily gather data from Azure SQL DB Serverless databases that auto-paused
  • No longer requires create-table permissions, so it works better in environments where you can pull diagnostic data but not see database contents
  • Requires .NET Desktop Runtime 7 or higher on the machine where you run the Consultant Toolkit, typically your jump box or laptop (not the SQL Server itself)

sp_Blitz Changes

  • Enhancement: added checks for unusual Query Store configurations and missing trace flags. (#3553, thanks Reece Goding.)
  • Fix: when it was run without SA permission, it would throw a false error about the number of TempDB files not matching. (#3578, thanks Tisit.)
  • Fix: when it was run with SA permission, the "No Failsafe Operator Configured" wasn't being reported. (#3577, thanks Tisit.)
  • Fix: added some wait types to the ignorable wait type list. (#3562, thanks Reece Goding.)
  • Fix: when it was run with SA permission, the invalid logins check wasn't being reported. (#3551, thanks PowerDBAKlaas.)

sp_BlitzIndex Changes

  • Enhancement: change index warnings from psychological terms, to more inclusive ones. (#3571, thanks W. Eli Hayes and VladDBA.)
  • Enhancement: faster processing of missing indexes. (#3556, thanks Matt Maddocks and Dean MacFadyen for reporting.)

sp_BlitzLock Changes

  • Fix: @debug = 1 would throw an error if your plan cache was empty. (#3567, thanks VladDBA.)
  • Fix: the @OutputTableName parameter would sometimes throw errors depending on your database context. (#3566, thanks BilliousBT.)
If you wanna watch me troubleshooting the sp_BlitzLock errors, this is a fun one-hour live stream of me working on that last bug:

https://youtu.be/tSpDiERowgY

sp_DatabaseRestore Changes

  • Enhancement: fix backup file selection for non-split full backups used with the @StoPAt command. (#3560, thanks Rob Hague.)

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.

2024-07-01: Consultant Toolkit Fixes

01 Jul 15:51
82e462d
Compare
Choose a tag to compare

The next release would normally be August, but I'm doing a release a little early in order to fix 2 issues with the Consultant Toolkit. The May release broke the ability to automatically upload results to Amazon S3, and didn't include all of sp_BlitzLock's results. Those are now fixed, so I wanted to get another release out quickly so consultants don't have to keep using the old version.

If you've hard-coded First Responder Kit installer file names, there was a big recent change. There are now just 2 installer scripts: Install-All-Scripts.sql, and a new Install-Azure.sql, which only installs the scripts that are compatible with Azure SQL DB. The old Install-Core scripts are gone because we've deprecated sp_AllNightLog, sp_BlitzInMemoryOLTP, and sp_BlitzQueryStore. Read on for why.

To get the new version:

Consultant Toolkit Changes

We fixed the problems with AWS S3 uploads and sp_BlitzLock results that were introduced by May's big changes. As a reminder, here's what we did in May because the changes were pretty big:
  • Supports Microsoft Entra multi-factor authentication (MFA)
  • Automatically retries failed connections, allowing you to more easily gather data from Azure SQL DB Serverless databases that auto-paused
  • No longer requires create-table permissions, so it works better in environments where you can pull diagnostic data but not see database contents
  • Requires .NET Desktop Runtime 7 or higher on the machine where you run the Consultant Toolkit, typically your jump box or laptop (not the SQL Server itself)

sp_Blitz Changes

sp_BlitzLock Changes

  • Enhancement: add @DeadlockType parameter to filter for just regular or parallelism deadlocks. (#3525, thanks Erik Darling)
  • Enhancement: add max CPU and elapsed times. (#3545, thanks Erik Darling)

sp_DatabaseRestore Changes

  • Enhancement: add @EnableBroker parameter to turn on Service Broker after a restore. (#3532, thanks John McCall)

Deprecating sp_BlitzInMemoryOLTP, sp_BlitzQueryStore, and sp_AllNightLog

sp_BlitzQueryStore was originally written by Erik Darling when he worked here. He's moved on to start his own excellent company, plus his own sp_QuickieStore. You should be using that instead.

sp_BlitzInMemoryOLTP was always kinda distributed as a courtesy - the real home for it is in KTaranov's Github repository, and you can still find it there. It hasn't been updated in over 6 years, and I've never seen anyone using it, so I'm removing it to streamline support issues.

sp_AllNightLog was a ton of fun when we built it several years ago, but it's consistently had a problem. Companies start using it, then decide they want to build something even more ambitious, typically a C# service with robust error handling and scheduling. sp_AllNightLog isn't the kind of thing I want to encourage beginners to use - it's complex.

So when Reece Goding started working on cleaning up sp_BlitzQueryStore's code, I decided that now was the time to deprecate stuff we no longer use or recommend. You're definitely welcome to continue to use 'em if you get value out of 'em! I've going to move these procs into the Deprecated folder, plus simplify the installation scripts. For the rest of 2024, the only installer script will be Install-All-Scripts.sql.

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.

2024-05-22: sp_BlitzFirst & sp_BlitzIndex Features

22 May 22:36
4e2cbda
Compare
Choose a tag to compare

If you've hard-coded installer file names, there's a big change in this release. There are now just 2 installer scripts: Install-All-Scripts.sql, and a new Install-Azure.sql, which only installs the scripts that are compatible with Azure SQL DB. The old Install-Core scripts are gone because we've deprecated sp_AllNightLog, sp_BlitzInMemoryOLTP, and sp_BlitzQueryStore. Read on for why.

To get the new version:

Consultant Toolkit Changes

This app has been awesomely stable & useful for years, but this month we finally had to pop the hood open to make a few big changes:
  • Supports Microsoft Entra multi-factor authentication (MFA)
  • Automatically retries failed connections, allowing you to more easily gather data from Azure SQL DB Serverless databases that auto-paused
  • No longer requires create-table permissions, so it works better in environments where you can pull diagnostic data but not see database contents
  • Requires .NET Desktop Runtime 7 or higher
That last bullet point refers to the machine where you're collecting data from, typically your jump VM or laptop. I really do hate minimum requirements, but that desktop runtime is a really fast & easy install that doesn't require a reboot. It was necessary to get the MFA authentication working.

Just to be super-safe, I'd keep the prior version around so that if you hit a weird client issue, you can still gather data. If you run into any issues, shoot us an email at [email protected] and we'll work through it with you.

I also 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. However, in the Dec 2023 release, we we did update those files, so if you haven't updated the Consultant Toolkit in a while and you've customized it, read that version's release notes about updating.

sp_Blitz Changes

  • Enhancement: new checks for SQL Server service & Agent service accounts that have too much permissions. (#3481, thanks Vlad Drumea.)

sp_BlitzFirst Changes

  • Enhancement: add 2 option for @expertmode to skip sp_BlitzWho output. Could already do this with the @OutputResultSets option, but this is much easier to do during emergencies. (#3486)
  • Enhancement: better startup/failover time detection in Azure SQL DB. (#3504)
  • Enhancement: new warning about approaching max worker threads. (#3491)
  • Fix: under heavy load, the headline news wait stats lines would underreport the number of seconds that the sample took. (#3507)
  • Fix: when the Hekaton "Garbage Collection in Progress" warning fires, mention that it can also be caused by a stressed-out memory-optimized TempDB. (#3488)
  • Fix: don't show the plan cache result set if it's not asked for in @OutputResultSets. (#3492)
  • Fix: incorrect URL for slow data file reads. (#3483, thanks Matt Mollart.)

sp_BlitzIndex Changes

  • Enhancement: performance tuning by skipping queries we don't need depending on the mode. (#3462, thanks Erik Darling.)
  • Enhancement: skip filtered indexes checks if they don't have permissions to query sys.sql_expression_dependencies. (#3522)
  • Fix: restore SQL Server 2014 compatibility. (#3452, thanks Brianc-DBA and others for reporting.)
  • Fix: unreachable databases are now excluded from the total database count. (#3516, thanks Gary Hunt.)
  • Fix: using DB_NAME() in more places for consistency. (#3517, thanks Gary Hunt.)
  • Fix: fixed typos. (#3519, #3515, #3512, thanks Gary Hunt.)

sp_DatabaseRestore Changes

  • Enhancement: during installation, if they don't already have Ola's scripts, explain why they're about to see warnings. (#3499)

Deprecating sp_BlitzInMemoryOLTP, sp_BlitzQueryStore, and sp_AllNightLog

sp_BlitzQueryStore was originally written by Erik Darling when he worked here. He's moved on to start his own excellent company, plus his own sp_QuickieStore. You should be using that instead.

sp_BlitzInMemoryOLTP was always kinda distributed as a courtesy - the real home for it is in KTaranov's Github repository, and you can still find it there. It hasn't been updated in over 6 years, and I've never seen anyone using it, so I'm removing it to streamline support issues.

sp_AllNightLog was a ton of fun when we built it several years ago, but it's consistently had a problem. Companies start using it, then decide they want to build something even more ambitious, typically a C# service with robust error handling and scheduling. sp_AllNightLog isn't the kind of thing I want to encourage beginners to use - it's complex.

So when Reece Goding started working on cleaning up sp_BlitzQueryStore's code, I decided that now was the time to deprecate stuff we no longer use or recommend. You're definitely welcome to continue to use 'em if you get value out of 'em! I've going to move these procs into the Deprecated folder, plus simplify the installation scripts. For the rest of 2024, the only installer script will be Install-All-Scripts.sql.

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.

2024-02-22: Faster sp_BlitzIndex, Enhanced sp_DatabaseRestore

22 Feb 15:06
b9695da
Compare
Choose a tag to compare

New this month: better sp_BlitzIndex performance on databases with tens of thousands of objects, sp_DatabaseRestore can run test scripts, and David Wiseman and Sean Killeen implemented basic automated testing for the First Responder Kit.

To get the new version:

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. However, in the Dec 2023 release, we we did update those files, so if you haven't updated the Consultant Toolkit in a while and you've customized it, read that version's release notes about updating.

sp_Blitz Changes

  • Enhancement: add non-default database configuration check for Accelerated Database Recovery. (#3411, thanks Erik Darling.)
  • Fix: skip drive info and SSRS/AS/IS checks on Managed Instances. (#3441, thanks Vlad Drumea.)
  • Fix: skip xp_regread when we don't have permissions. (#3425, thanks Erik Darling.)
  • Fix: avoid duplicate rows on AGs. (#3402, thanks gotqn.)
  • Fix: permissions checks not working as intended. (#3377, thanks Montro1981.)

sp_BlitzCache Changes

sp_BlitzIndex Changes

  • Enhancement: faster performance on databases with tens of thousands of objects or more. (#3394, thanks Henrik Stein Poulsen and Rich Benner.)
  • Fix: if a partitioned table had both columnstore and rowstore indexes, the columnstore visualization section showed extra blank rows. (#3415, thanks Chris May.)
  • Fix: improving language friendliness. (#3423, thanks Sean Killeen.)

sp_DatabaseRestore Changes

  • Enhancement: new @RunStoredProcAfterRestore parameter lets you specify a stored procedure name in the form of dbo.sp_Whatever to run after the restore completes. (#3429, thanks Greg Dodds.)
  • Enhancement: new @FileNamePrefix parameter to add to the names of all restored files. Useful when you need to restore different backups of the same database into the same directory. (#3431, thanks Lukasz Biegus.)

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.

2023-12-22: Happy Holidays!

22 Dec 18:26
ab68347
Compare
Choose a tag to compare

New this month: more work on letting sp_Blitz run with limited permissions, nicer Markdown output, sp_BlitzLock compatibility with Managed Instances, and more.

To get the new version:

sp_Blitz Changes

  • Enhancement: way prettier output when @OutputType = 'markdown'. (#3401, thanks Mike Scalise.)
  • Enhancement: simpler, more intuitive checks for Instant File Initialization. (#3362 and #3409, thanks Montro1981.)
  • Enhancement: if we had to skip checks because you didn't have enough permissions, we now warn you about that. (#3376, thanks Montro1981.)
  • Fix: continued work on detecting msdb permissions. (#3377, thanks Montro1981.)

sp_BlitzCache Changes

sp_BlitzIndex Changes

  • Fix: @debug = 1 was skipping a character of the dynamic SQL. (#3406, thanks Per Scheffer and Montro1981.)
  • Fix: added drop-if-exists statement for temp tables to make it easier to run parts of sp_BlitzIndex ad-hoc, outside of a stored proc. (#3383, thanks Chad Baldwin.)

sp_BlitzLock Changes

sp_BlitzQueryStore Changes

sp_ineachdb Changes

  • Enhancement: new @is_ag_writeable_copy parameter to only run queries against those databases. (#3399, thanks Douglas Taft.)

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.

2023-10-10: sp_Blitz Runs with Lower Permissions, sp_BlitzCache Checks for Duplicate Plans

10 Oct 15:27
215813f
Compare
Choose a tag to compare

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:

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.

2023-08-20: New Features for sp_BlitzIndex, sp_BlitzLock, and sp_BlitzQueryStore

20 Aug 15:12
49d64cb
Compare
Choose a tag to compare

Turns out y'all actually work over the summer - there are actually cool new features this month! I think I'm actually going to have to record updated sp_BlitzIndex, sp_BlitzLock, and sp_BlitzQueryStore modules for my "How I Use the First Responder Kit" class because these features are pretty awesome.

To get the new version:

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

  • Improvement: better chance of running to completion when you're not SA. sp_Blitz has always required sysadmin permissions in the past, and this is our first pass at it, so if you have limited permissions and you run into errors, feel free to file 'em as issues and we'll see if we can work around it. (#3292, thanks Erik Darling.)
  • Fix: reduce possibility of missing replication in use. (#3316, thanks DavidSchanzer.)

sp_BlitzCache Changes

  • Fix: more accurate estimation of memory grant used overall across multiple executions of a query. (#3313, thanks mdpenguin.)
  • Fix: more accurate percentage of duplicate query plans. We've been battling this issue for yeeeears, and I still can't reproduce the issue in the lab, so I don't think this is the last chapter on this issue. (#3314, thanks WaldenL.)
  • Fix: skip warnings of ResourceDB queries. (#3315, thanks WaldenL.)
  • Fix: better compatibility with AG secondary replicas. (#3291, thanks mbambion.)

sp_BlitzIndex Changes

  • Enhancements in #3294: in the columnstore visualization section, each rowgroup's state, trim reason, etc are now shown:

And in that result set, the size of the secondary dictionary (if required) for a column is now included in its size. Here's the Users.DisplayName column before - note the sizes in the far right:

Now, with the secondary dictionary size included, the DisplayName column's true size shows up as being dramatically larger because the strings are relatively unique and don't compress well:

sp_BlitzLock Changes

  • Improvement: if the queries involved in deadlocks are still in the plan cache, sp_BlitzLock now shows an additional result set with their plans. (#3293 and #3311, thanks Erik Darling.)
  • Improvement: when targeting one session, make sure it exists first. (#3306, thanks Erik Darling.)
  • Improvement: faster XML queries. (#3305, thanks Erik Darling.)
  • Fix: time searches are now UTC compatible. (#3307, thanks Erik Darling and Mike Hodgson.)

sp_BlitzQueryStore Changes

  • Improvement: Parameter Sensitive Plan Optimization (PSPO) compatibility! If you search for a single @StoredProcName, we now show all of the plan variants for it. (#3312, thanks sqljared.)

sp_DatabaseRestore Changes

  • Improvement: new @KeepCdc parameter restores that attribute too. (#3289, thanks SQLSlinger.)
  • Fix: compatibility with SQL Server 2022's new undocumented columns in RESTORE HEADERONLY. (#3190, thanks Razvan Socol.)
  • Fix: incorrect error message in debugging output. (#3320, thanks Greg Dodds.)

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.

2023-06-13: Bug Fixes for sp_Blitz, sp_BlitzLock, sp_DatabaseRestore

13 Jun 21:20
4f8b641
Compare
Choose a tag to compare

This one's a pretty quiet release: just bug fixes in sp_Blitz, sp_BlitzLock, and sp_DatabaseRestore.

To get the new version:

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

  • Fix: update unsupported SQL Server versions list. Time marches on, SQL Server 2016 SP2. (#3274, thanks Michel Zehnder and sm8680.)
  • Fix: if you ran sp_Blitz in databases other than master, we weren't showing the alerts on TDE certificates that haven't been backed up recently. (#3278, thanks ghauan.)

sp_BlitzLock Changes

  • Enhancement: compatibility with Azure Managed Instances. (#3279, thanks Erik Darling.)
  • Fix: convert existing output tables to larger data types. (#3277, thanks Erik Darling.)
  • Fix: don't send output to client when writing it to table. (#3276, thanks Erik Darling.)

sp_DatabaseRestore Changes

  • Improvement: new @FixOrphanUsers parameter. When 1, once restore is complete, sets database_principals.principal_id to the value of server_principals.principal_id where database_principals.name = server_principals.name. (#3267, thanks Rebecca Lewis.)
  • Fix: better handling of last log files for split backups when using @StoPAt. (#3269, thanks Rebecca Lewis.)
  • Fix: corrected regression introduced in 8.11 that caused non-striped backups to no longer be deleted. (#3262, thanks Steve the DBA.)

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.

2023-04-20 Release: Faster sp_BlitzFirst & sp_BlitzLock

20 Apr 16:21
273f3fe
Compare
Choose a tag to compare

This month's big changes are performance tuning in sp_BlitzFirst & sp_BlitzLock.

Part of the benefits of using the open source FRK is that when any of us work with really big/fast/ugly servers, we tune the FRK procs to work better in those environments - which means it'll likely work better in yours, too. For example, this month I was working with a server doing 30k-35k queries/sec and hitting threadpool issues, and I wanted sp_BlitzFirst to return more quickly in that kind of environment, so I tuned it.

To get the new version:

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

sp_BlitzFirst Changes

  • Enhancement: new @OutputResultSets parameter lets you return less result sets when you're in a hurry. (#3255)
  • Enhancement: performance tuning for faster response time on systems with thousands of simultaneous active queries. (#3257)
  • Fix: no more arithmetic overflow on queries with horrific row estimates. (#3241, thanks SQLLambert.)
  • Fix: remove @@rowcount to avoid problems with In-Memory OLTP. (#3237)
  • Fix: only alert on bad cardinality estimations for queries that run > 5 seconds. (#3253)

sp_BlitzLock Changes

sp_BlitzWho Changes

  • Fix: no more date errors when a request's start date is 1900. (#3243, thanks Jeff Mosu.)

sp_DatabaseRestore Changes

  • Enhancement: new @FileExtensionDiff parameter for folks who want to name their differential backup extensions different than Ola's defaults. (#3234, thanks Will Spurgeon.)

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.

2023-02-15: Bug Fixes for Cache, First, Lock

15 Feb 18:00
9e8f376
Compare
Choose a tag to compare

Thanks to this technique to run SQL Server on Apple Silicon chips, I'm now developing exclusively on my Mac! I've been using a Mac for over 15 years, but in the past, I've always used Windows at some layer somewhere. This time around, it's all Mac the whole way down, which is kinda nifty. Makes my release process easier.

To get the new version:

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_BlitzCache Changes

  • Enhancement: when using @sortorder = 'all', there's a new pattern column to show which metrics sucked about the query, and it's included in the table output. (#3172, thanks Adrian Buckman.)
  • Fix: case sensitivity issues on joining to sys.all_columns. (#3233, thanks sm8680.)

sp_BlitzFirst Changes

  • Fix: QRY_PROFILE_LIST_MUTEX lock timeouts on sys.dm_exec_query_statistics_xml. (#3210, thanks sqlslinger.)

sp_BlitzLock Changes

  • Fix: error converting data type nvarchar to bigint. (#3201, thanks Erik Darling.)
  • Fix: arithmetic overflow in wait_time_hms when wait time added up to more than 2147483647. (#3215, thanks Vlad Drumea.)
  • Fix: string or binary data would be truncated in table tempdb.dbo.#deadlock_owner_waiter. (#3206, thanks johnkurtdk.)

sp_BlitzWho Changes

  • Fix: shows procedure definition even if the current statement isn't in the plan cache. (#3163, thanks Adrian Buckman.)
  • Fix: tempdb allocations did not include internal objects such as worktables and workfiles. (#3174, thanks Adrian Buckman.)

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.