116

The excavator has been awarded to... many users just some time ago. What a... bug? Certainly it is, too many unavailable posts :D

Seems to affect Marshal and Excavator.

screenshot of many badges in quick succession, all for deleted posts

Also looks like it's everywhere. SO's got a similar problem a couple of minutes before.

Moreover, I can has THREE X marshals!!!

33
  • 24
    I was just re-awarded Marshall on Stack Overflow. I think something's wrong with duplicate badge checking.
    – user206222
    Jun 7, 2016 at 20:12
  • 46
    We're investigating.
    – Adam Lear StaffMod
    Jun 7, 2016 at 20:15
  • 2
    I expect this is going to spread for a while, and to other badges. Further updates in comments here on which sites are affected will probably be noise.
    – user206222
    Jun 7, 2016 at 20:15
  • 6
    @Emrakul Reports of affected sites aren't needed, but if there are other badges that have issues, that'd be helpful.
    – Adam Lear StaffMod
    Jun 7, 2016 at 20:16
  • 4
    Related: meta.stackoverflow.com/q/325689/2415822
    – JAL
    Jun 7, 2016 at 20:19
  • 8
    Here I was, assuming that this was an intentional change to allow it to be earned multiple times for multiples of 500 flags (that matches the number I've just been granted).
    – Jeremy
    Jun 7, 2016 at 20:23
  • 8
    The question on everyone's mind: after all of this is fixed, do we get to keep the badges?
    – JAL
    Jun 7, 2016 at 20:25
  • 22
    @JAL Resounding no.
    – animuson StaffMod
    Jun 7, 2016 at 20:25
  • 5
    @JAL Badges that were awarded due to a bug are not badges I would want to keep ;-)
    – Tim
    Jun 7, 2016 at 20:26
  • 3
    @animuson There are more old ill-gotten badges in this query. Jun 7, 2016 at 20:27
  • 5
    Excavator seems to have gone from my achievements drop-down.
    – Tim
    Jun 7, 2016 at 20:27
  • 2
    Marshall also appears to be back in order.
    – Makoto
    Jun 7, 2016 at 20:31
  • 7
    Can anyone beat this? i.stack.imgur.com/V90zZ.png :P
    – Mysticial
    Jun 7, 2016 at 20:32
  • 5
    I still have Marshall 3x FWIW. Probably caching
    – Mike G
    Jun 7, 2016 at 20:33
  • 3
    jsfiddle.net/AYPpF/82/show/light
    – fredley
    Jun 7, 2016 at 20:36

1 Answer 1

113

We just did a major revamp of how badges are awarded behind the scenes to drastically reduce the load on SQL Server. It now takes advantage of some pre-compute work we're doing to track badge progress in the profile.

However, I screwed up 2 queries, specifically the text names of the badges that prevent duplicate awarding. I was thinking to myself earlier "hey, maybe we should pass these in" as part of the rewrite - but it's not quite so simple. I'll take another look at this soon but when we're not fighting fires from a SQL Server upgrade. The cardinality changes which hosed some of the bigger badge queries needed urgent attention here, which ended up as a major revamp and introduced the 2 errors reported here.

Apologies for all the bad grants here - that certainly wasn't the intention. Due to how badges get tested, it's also not a symptom that shows up locally. If I can change this to a param exclusion passed by the code then things like this become far less likely to happen going forward.

I have cleaned up all achievements and grants associated with the bad code. User badge counts (on user cards and flair) will sync up tonight as part of a regular process.


Edit: If you're wondering why I had to address this quickly on the SQL Server front, here's the effect it was having and you can guess when the fix went out:

enter image description here

29
  • 36
    Not a bad mistake to make, we all felt quite happy :)
    – user310756
    Jun 7, 2016 at 20:39
  • 2
    Unless Firefox does some really extreme caching: i.stack.imgur.com/PojuS.png this is still not fixed for me.
    – Tim
    Jun 7, 2016 at 20:40
  • 6
    @Tim Read the last sentence before the horizontal rule.
    – animuson StaffMod
    Jun 7, 2016 at 20:41
  • 2
    @animuson That's my profile page, not Flair / User Card.
    – Tim
    Jun 7, 2016 at 20:42
  • 3
    Seems like my MSE account here got up to 4 x Marshall. So do I win anything?
    – Mysticial
    Jun 7, 2016 at 20:49
  • 24
    @Mysticial You get a cookie. Your payment has already been delivered and you can view it in your browser cache. Jun 7, 2016 at 20:50
  • 3
    @TZHX Yes, in SQL 2016 on compat 130. I have been fighting fires the past 2 days and trying my best not to let users notice anything is happening. I failed here :( Jun 7, 2016 at 20:51
  • 3
    inb4 "How you should not upgrade to SQL 2016... live" next blog post title.
    – Braiam
    Jun 7, 2016 at 20:55
  • 2
    It must be so horrible to have been using more than 2% of your CPU. :p The redundancy you guys run at is amazing; but I guess it pays off when it lets you do things like change compat levels and not have users notice anything; and just take the hit while you find all the problems it causes.
    – TZHX
    Jun 7, 2016 at 20:56
  • 2
    I think it's fair to say that if anyone is following Nick on twitter (not sure why he's not following me! :p) you'll realise what a headache he's been having at the moment on some of this stuff :(... Jun 7, 2016 at 20:56
  • 6
    @Quill I don't have unique user counts, but there were 9,102 total grants in play across all sites. 3,420 were on Stack Overflow - the rest were a batch cleanup I wasn't looking at numbers on. Jun 7, 2016 at 20:58
  • 5
    @gdoron This wasn't a bug! We just decided to reconsider our recent generosity expansion. Jun 7, 2016 at 21:00
  • 8
    Just in case you missed it, side effect bug: meta.stackexchange.com/questions/280040/… Jun 8, 2016 at 6:22
  • 4
    I think there should be a badge that signifies that you have earned a badge multiple times that usually cannot! :)
    – hochl
    Jun 8, 2016 at 11:55
  • 2
    Just FYI, this is still not completely fixed on Cross Validated & "tonight" should have passed. On my userpage, only 1 marshal is listed under the badges tab, but the counts of gold badges at the top of my screen & on my flair / usercard are still incorrectly inflated (21 instead of 19). Jun 8, 2016 at 14:11

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .