First Responder Kit Release: Now With 100% More Working Code Than The Irish Space Program

Every April I think about this girl I grew up with named April who smelled like Cheez-Wiz.

She died tragically in a home for the blind on Taco Tuesday.

Special thanks to @jeffrosenberg , @mrthomsmith , @rwhoward for contributing this month. Your complimentary oxygen is now available. The rest of you can go download the First Responder Kit.

sp_Blitz Improvements

  • #762 This big dummy would crash on certain versions of 2008R2 when checking for memory dumps, ironically causing a memory dump. So hey, there’s that. Now we don’t do that for those versions. You’re welcome.
  • #824 Some files are bigger than others, and some sizes do matter. For instance, we only care if your tempdb files are more than 1 GB apart in size. Now you know, and knowing is half the burden,

sp_BlitzCache Improvements

  • #770 We now warn you if you use a Spatial index, since that probably means you accidentally created some Spatial data in SQL Server. I mean, who does that?
  • #796 sp_BlitzCache will now warn you if your code creates or drops tables and indexes while running. Yeah, who knew?
  • #801 We do our best to bubble up information from statements in stored procedures to their calling code. Because that’s the right thing to do. Why should those lazy statements get all the attention? They’re not special. Now we do that with memory grants, where available.
  • #808 Code is weird. Code that calls other code is weirder. Code that gets blocked is double weird, like a trailer full of twin sized mattresses. We now warn you if low cost queries have high CPU, or if long running queries have low CPU. Surely those are signs of trouble.
  • #816 Ah, zero. Is there anything you can’t do? Oh, be divided by. Yeah. Let’s not do that.

sp_BlitzFirst Improvements

  • #819 Biggie Smalls for mayor, the rap slayer, Hekaton say your prayers. Also get notified if any activity is happening by BlitzFirst.
  • #823 Funny story: no one ever found this error, because no one ever ran sp_BlitzFirst when they had a query being blocked for more than 30 seconds, which are EXACTLY THE KIND OF PEOPLE WHO SHOULD BE RUNNING sp_BlitzFirst, especially since this bug is fixed.

sp_BlitzIndex Improvements

  • #772 Mode 2 is now capable of being output to a remote server. Not available for other modes, or Depeche Mode. Thanks, @rwhoward!
  • #777 Cleanliness is next to Godliness, so I cleaned up this code to find your blasphemous computed columns based on scalar functions so you may be doomed for all eternity.
  • #778 Unused indexes are, like, a bummer, man. But they’re a bigger bummer when they have a lot of writes. Thanks to @amtwo for the totally badical suggestion. Air guitar and whatnot.
  • #779 I keep hearing about this SQL Server 2016 thing. I hope someday someone uses it, so they can use temporal tables, and marvel at the information that so_BlitzIndex provides them.
  • #711 If you had two copies of a database (like if you backed it up, then restored it under a different name), you might have been seeing double. Now, it’s not sp_BlitzIndex’s fault – it’s just due to your trifocals.
  • #827 Brent did a big round of performance tuning, and it’s now 3x-20x faster. That probably means he introduced a ton of bugs. Hey, It Just Runs Faster!®

sp_BlitzWho Improvements

  • #822 Sleeping transactions can violate the NAP by blocking other queries with their snoring so we can call our gold level sp_BlitzWho to arrest them. or just find them. Why weren’t we going this before? That was silly.

sp_DatabaseRestore Improvements

  • #765 We have the most elegant, luxurious storage for our LSNs. Really. Ask anyone. They’re NUMERIC(25,0).
  • #766 Similarly, we have the most elegant and luxurious storage for our file paths: NVARCHAR(MAX).
  • #775 Being compatible is important. Being backwards compatible means you have more bugs to fix. But hey, now you can find bugs if you’re on 2008 or later.
    These were all done by @jeffrosenberg! A threefer!
  • #787 It’s not a stored procedure unless it starts with sp_ — thanks @mrthomsmith !

You can download the updated FirstResponderKit.zip here.

Previous Post
Announcing Our Summer/Fall Training Schedule and Instant Video Access
Next Post
[Video] Office Hours 2017/4/5 (With Transcriptions)

18 Comments. Leave new

  • Since Ireland is a member of the ESA, and the ESA writes space program code, then your title is not actually true.

    Reply
    • Erik Darling
      April 7, 2017 12:34 pm

      Prove it.

      Reply
      • “Who belongs to ESA?

        Austria, Belgium, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Ireland, Italy, Luxembourg, the Netherlands, Norway, Poland, Portugal, Romania, Spain, Sweden, Switzerland and the United Kingdom. Slovenia is an Associate Member. Canada takes part in some projects under a cooperation agreement.

        Bulgaria, Cyprus, Malta, Latvia, Lithuania and Slovakia have cooperation agreements with ESA. Discussions are under way with Croatia.
        Who belongs to ESA?

        Austria, Belgium, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Ireland, Italy, Luxembourg, the Netherlands, Norway, Poland, Portugal, Romania, Spain, Sweden, Switzerland and the United Kingdom. Slovenia is an Associate Member. Canada takes part in some projects under a cooperation agreement.

        Bulgaria, Cyprus, Malta, Latvia, Lithuania and Slovakia have cooperation agreements with ESA. Discussions are under way with Croatia. ”

        http://www.esa.int/About_Us/Welcome_to_ESA/What_is_ESA

        Reply
  • Paddy Murphy (Astronaut)
    April 8, 2017 3:23 am

    Ah sure hear look what’d ye be wanting to do in space, like? Colder than a witches tit & feckin nowhere to get blattered. For the birds, like.

    Grand so, will keep me arse down here on planet earth rather.

    Reply
    • Erik Darling
      April 9, 2017 5:48 pm

      Well, on the other hand, in space you don’t have to fight anyone over whose house has the biggest spiders, or whose sister got pregnant first.

      Reply
      • Paddy Murphy (Astronaut)
        April 10, 2017 1:39 pm

        In space, no-one can hear your DBA scream…

        We have spiders in Ireland. And pregnant sisters. And sheep. Oh God, do we have sheep!

        But no snakes, the durty feckers. St. Patrick sent them slithery gobshites packing a little while ago. Handy, having a saint around when you’ve a snake problem. Would recommend.

        Reply
  • RE sp_BlitzFirst # 823. That’s because the people who are even aware that they’ve had a query blocking for more than 30 seconds are probably detecting it automatically using “blocked process threshold (s)” and an alert and never bothered running sp_BlitzFirst.

    Reply
  • The new sp_BlitzWho (v5.2) throws an error when I try to show sleeping spids. Looks like, in my case, the [elapsed_time] section of the query broke the 24 days, 20 hours, 31 minutes and 23.647 seconds boundary.

    sp_blitzwho @ShowSleepingSPIDs = 1
    “The datediff function resulted in an overflow. The number of dateparts separating two date/time instances is too large. Try to use datediff with a less precise datepart.”

    The offending dates in my case:
    select datediff(millisecond, ‘2017-03-15 13:38:49.920’, ‘2017-04-13 14:56:05.293’)

    Reply
    • Erik Darling
      April 13, 2017 3:31 pm

      The whole reason we have GitHub is to take issues like this where we can keep track of them 🙂

      Reply
  • OK. I’ll post there then.

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.