In the last hour or so, there have been multiple instances where I have hit "Approve" on an edit, only to have the same edit brought back up again.

Hitting "Approve" again still does not advance the edit, and no orange box appears to indicate that someone has already rejected it or approved it. Hitting "not sure" seems to be the only way around it.

I have tested this on both Chrome 22.0.1229.94 and Firefox 15. There doesn't appear to be anything wrong with my connection, and the other queues are working just fine. I don't have a screenshot as there's not much to show.

Update: I just had this happen with a reject on Super User as well.

Update: Clicking "Improve" brings up the edit box for the post - but without the suggested edits, i.e. the original post content is shown.

  • 6
    Repro here. I saw the same earlier. But I refreshed instead of hitting "Approve" again. – Mysticial Oct 12 '12 at 2:15
  • I didn't try refreshing the page, actually. Does that escape it? – jonsca Oct 12 '12 at 2:16
  • I remember clicking away when I saw the dupe. When I went back to the queue, it popped up a 3rd time. I hit "Approve" and it worked. – Mysticial Oct 12 '12 at 2:17
  • 1
    This seems to be happening to me when there is only 1 item left in the queue – Glenn Slaven Oct 12 '12 at 2:48
  • 4
    @GlennSlaven I think for me there was more than one thing in there, but I'm not 100% about that. – jonsca Oct 12 '12 at 2:50
  • 4
    This happened to me earlier. After voting on the same two edits 2-3 times, I looked at the history and there was no indication I had acted on them at all. – Kevin Oct 12 '12 at 3:38
  • 1
    Just happened to me – Chris Laplante Oct 12 '12 at 3:42
  • I can confirm that it does happen with more than one item in the queue - it just happened to me when I had two. – Mac Oct 12 '12 at 6:06
  • It does happen a lot of time. – Toon Krijthe Oct 12 '12 at 6:15
  • 3
    To add to my previous comment: I just got caught in a loop with multiple posts - two posts, and when I approve/reject one, the other appears. – Mac Oct 12 '12 at 6:31
  • Same to me this morning. – j0k Oct 12 '12 at 8:51
  • I have this, too. I wondered if it is just the new firefox 16.0 – örs Oct 12 '12 at 9:34
  • @örs Actually, I had it under the old 15 Firefox and Chrome, so I don't think so... – jonsca Oct 12 '12 at 9:36
  • Just happened to me with 11 pending edits. Tried refreshing, and hitting not sure and going back and trying again. Is this some sort of throttling mechanism? I can deny extremely minor edits pretty quickly. – Mick MacCallum Oct 12 '12 at 10:26
  • My work-around turns out to be false hope; votes in that manner are not recorded. – Martijn Pieters Oct 12 '12 at 10:51

Update: we've fixed another underlying cache bug (where cache wasn't being cleared cross-server), that should eliminate the last of the craziness including the unable-to-approve scenario above.

A fix for this is being deployed across the network in the next few minutes. It's a race condition causing it...so we'll continue to monitor.

What caused this you say? We made some major performance tweaks last night to further lessen our SQL load. One thing that we were needlessly doing on every question page load was querying for suggested edits on any of the posts. This has 2 effects:

  • If you made the edit, you see it with a banner that notes it's waiting for approval
  • If you have an edit button, you see a (1) indicating there's an edit (which also causes the review panel to popup, rather than an editor...since there is one)

Given that even on Stack Overflow the Suggested Edit queue is capped at 200, and most of the time it's in the single digits, this meant a 99.9999% miss rate on that query. Wouldn't it be better to cache a list of Post Ids in memory that have edits, then just do a further query if there's a hit on that cache? Why yes, that sounds like a lovely idea.

What was happening was individual web servers were removing items from that list as they were dequeued (approved, rejected, deleted, etc.) but were doing so from their copy of the cache which led to all sorts of per-server and cross-server race conditions.

Instead of being that optimized we'll just sync with SQL every time there's a change. On average this is around once a minute...compare that to the query on every question show running approximately 150 times per second (this was measured well after peak hours, it actually gets run way more than that), that's still a tremendous win. Also the sync query is a 0-1ms operation with our filtered indexing, so that helps make this a no-brainer fix.

As I wrap this up, Stack Overflow is rolling through a deploy now and will finish in 90 seconds...if you still see issues after that please comment here and we'll track them down.

  • Still seeing it on SO... not sure what other info you need... and now seems to be working. Maybe 90 seconds turned into 15 minures. :) – Barak Oct 12 '12 at 15:39
  • I lied, went back in and it is still happening. – Barak Oct 12 '12 at 15:42
  • @Barak - what are you doing exactly? There were multiple issues here across the sites, need specifics on what you're doing – Nick Craver Oct 12 '12 at 15:50
  • 1
    Stack Overflow, reviewing suggested edits, hit approve, does its thing (Approving) and then the same suggested edit came up again. – Barak Oct 12 '12 at 16:11
  • @Barak - taking a look - I didn't write any of this so there's a bit of code learning along the way, hopefully can track this down shortly – Nick Craver Oct 12 '12 at 16:24
  • Great! Unfortunately, I've got to leave soon (that pesky job thing), so hopefully someone else can assist you in tracking it down if you find it after I'm gone. – Barak Oct 12 '12 at 16:30
  • @NickCraver If it helps: I see still see the bug while attempting to Approve or Reject the last Suggested Edit in Stack Overflow. – Sam Oct 12 '12 at 16:52
  • Same here, I still have the bug. – j0k Oct 12 '12 at 17:32
  • 4
    We're looking at the approval bug, tracked down another underlying bug with the cache that's getting pushed out now - it wasn't syncing between web servers as we thought it was. – Nick Craver Oct 12 '12 at 17:46
  • Thanks so much for looking into all of this, Nick. – jonsca Oct 12 '12 at 21:01
  • (and for the fix, of course, hehe! I was AFK for a while there) – jonsca Oct 12 '12 at 21:05
  • @NickCraver, seems to have been fixed here too. – Barak Oct 13 '12 at 13:58

You must log in to answer this question.

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