I was looking through my reputation history on Stack Overflow and was surprised to see that I lost a whopping 558 points on August 7th! Expanding the view I see a whole bunch of questions apparently marked as unaccepted at exactly 03:00. Visiting each question shows that my answers on them are still accepted, however.

reputation history

Am I the victim of a bug? Is this a known issue?

share|improve this question
Wow, that's like Jon Skeet in red instead of green... –  Mysticial Aug 31 '12 at 6:42
This is unacceptable (Couldn't resist). –  Toon Krijthe Aug 31 '12 at 6:48
Looks like a bug. –  Toon Krijthe Aug 31 '12 at 6:50
Have you tried triggering a rep recalc? –  nhahtdh Aug 31 '12 at 7:02
@nhahtdh, how do I do that? –  friedo Aug 31 '12 at 7:04
@friedo: /reputation - button at the bottom –  animuson Aug 31 '12 at 7:08
@animuson: As far as I know the recalc does only change the number, not the history. –  Time Traveling Bobby Aug 31 '12 at 7:22
@UnicornifiedBobby: It's worth a try. It affected the history before, but nowadays with reputation being automatically updated for removals, it tends to be that the glitches that show up in the history don't always get fixed by recalcs anymore. –  animuson Aug 31 '12 at 7:24
@Mysticial Are we dealing with Bizarro-Skeet here? –  Bart Aug 31 '12 at 8:14
@Bart Unless it's rate-limited, someone could technically pull a stunt like that on Jon Skeet. Ask a bunch of questions that bait him to answer. Give him the accept each time. Then on a different day, unaccept them all at once. –  Mysticial Aug 31 '12 at 8:17
Now we know whom to roll up into one big sockball. –  casperOne Aug 31 '12 at 11:58
We are looking for the cause of this now. Don't worry, we have all the data to restore your accepts; just trying to figure out what happened. –  Jarrod Dixon Aug 31 '12 at 19:38
Well, it gave you over 300 rep here on Meta - good start! ;) –  Shadow Wizard Sep 3 '12 at 21:15
Heh - I was just thinking that this question got me more upvotes than almost all of my "real" questions on SO. –  friedo Sep 3 '12 at 23:05
It was the repocalypse! All shall perish! –  fredsbend Apr 1 '13 at 21:51
show 7 more comments

1 Answer

up vote 42 down vote accepted

We have a scheduled process that does some cleanup around accepted answers, ensuring that no answer has more than one active accepted answer vote. Before this incident, it had never found any problems.

For a few days, our index optimization script ran at the same time as this daily job, and a pitfall of running certain queries in NOLOCK means phantom data could appear.

The index optimization job was moved to a much earlier time weeks ago, so this should not happen again.

49 accepted answers (with yours being the bulk) have been repaired and your reputation should be back to normal.

share|improve this answer
Good job hunting this process down! Bet you found it cowering in a dark corner? :) –  Shadow Wizard Sep 3 '12 at 21:14
Yeah, perfect storms are never fun to track down - kudos go to Nick Craver for the insight. We're looking at changing the connection behavior for these scheduled routes to further prevent these mishaps. –  Jarrod Dixon Sep 3 '12 at 21:22
Cheers! Nick is really a nice person to let you collect rep on his insights.. :D –  Shadow Wizard Sep 3 '12 at 21:31
At dba.se: is NOLOCK always bad? –  ypercube Sep 3 '12 at 21:43
@ypercube - It's worth noting that the discussion between "reports" and "high scale website with millions of queries/updates a day" is a very different one with regards to NOLOCK :) –  Nick Craver Sep 3 '12 at 21:54
@Nick I do not disagree but the question was not about reports only but NOLOCK in general. –  ypercube Sep 3 '12 at 21:57
@ypercube - It was asked that way for sure...but looking at the answers it was discussed/answered from that point of view (where data accuracy is paramount). When you throw exact accuracy out the window (since it's changing all the time), the answers/reasoning would be very different. It would be interesting to ask that question from Stack Overflow's point of view and see what people think :) –  Nick Craver Sep 3 '12 at 22:01
@Nick: Rewreading those answers, yes, you are absolutely right. Also, such a question would be very interesting, indeed. The details of the scheduled process and the index optimization script as well. –  ypercube Sep 3 '12 at 22:05
An amusing aspect: SQL DBMS' excuse for continued existence, in some minds, is ACID, but so frequently ACID gets neutralized to get back performance. Perhaps you'd just be happier with Cassandra:-)? –  Rosinante Sep 3 '12 at 22:33
Thanks for the explanation and for repairing my tarnished reputation. :) –  friedo Sep 3 '12 at 23:07
@Rosinante: Sure, if you don't mind losing the relational part. –  Robert Harvey Sep 4 '12 at 0:27
What's an "active accepted answer vote?" –  Purag Sep 4 '12 at 4:05
@Purmou you can click the accepted answer button multiple times on an answer, toggling the accepted answer state. We store every vote you make, only soft-deleting older votes when you change your mind. An "active" vote is simply one that hasn't been deleted (i.e. its DeletionDate is null). –  Jarrod Dixon Sep 4 '12 at 4:16
That's some nice detective work there, kudos! –  Shog9 Sep 4 '12 at 4:32
Wondering if a unique constraint would be better ;-) –  Chris Travers Sep 4 '12 at 6:56
show 2 more comments

You must log in to answer this question.

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