Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 158 Stack Exchange communities.

What is meta?
Here's how it works:
  1. Any Stack Exchange user can ask a question
  2. The community provides support, votes on ideas, and reports bugs
  3. Your voice helps shape the way Stack Exchange operates

I'm not sure how but my userid on Stack Overflow changed from "progrmr" to "Gary A Morris" and my rep went from 15k+ to 21. My "new" userid on SO appears to be user154803. Questions that I've answered in the past are associated with "Gary A Morris" such as this one. What's going on?

user154803 - 1 rep, joined 3 years ago, no answers. Associated w/this meta account.

Gary A Morris - 21 rep, member for 5 days, 470 answers, answers from 2010?? Account is associated with the 1 rep SO account.

share|improve this question
member for 5 days but you answered a question in 2010... what is this voodoo ;!? – chown Sep 28 '12 at 1:35
Definitely a bug. I tagged it as such. Do you still have all your privileges? – jmort253 Sep 28 '12 at 1:35
Check out your accounts: - you have 2 SO accounts with different userid's. Weird indeed. – chown Sep 28 '12 at 1:37
Have you looked at the merge instructions to see if one of the merging actions might have happened somehow? – blahdiblah Sep 28 '12 at 1:37
Man, 102 upvotes on that answer, but you only have 21 rep. You must have gotten a lot of downvotes. – blahdiblah Sep 28 '12 at 1:39
Not sure I'd feel comfortable trying a merge. Who knows what could happen. Maybe wait for a dev :( – jmort253 Sep 28 '12 at 1:39
Looking into it now... – Jarrod Dixon Sep 28 '12 at 1:43
Try logging in again on Stack Overflow - I think everything should be back to normal. – Jarrod Dixon Sep 28 '12 at 2:00
I clicked on Gary A Morris, and it links to progrmr, a user with 15,244 reputation! Looks good from this angle. :) – jmort253 Sep 28 '12 at 2:05
It looks fine now. That was strange! Thanks for the quick action. – progrmr Sep 28 '12 at 2:33
@JarrodDixon: Could you post an answer explaining what happened? – Mechanical snail Sep 28 '12 at 6:17
@Mechanicalsnail something hung up on a merge it appears, we'll dig deeper in the morning and follow up. – Nick Craver Sep 28 '12 at 7:05
up vote 22 down vote accepted

Jarrod and I tried to fix you up as soon as I saw the meta post, saved the investigation for this morning. Let me know if you see anything else odd with your account and I'll get it fixed up.

So what happened was you logged in with another OpenID provider with a verified email address that matched your existing user, this triggers a merge of accounts. A merge is a 2 step operation:

  1. Merge everything that matters to the master user (posts, name, oldest creation date, etc.)
  2. Delete the child user which no longer has anything

Deletion is where this one went south, specifically a SQL timeout running in .Delete():

update ModeratorMessages 
   set DeletionUserId = @comId 
 where DeletionUserId = @userId

This is a table where flags are stored, when a user is deleted their flags are moved to the community user. In the merge case these were already moved over, but the .Delete() method is used for regular deletion as well so it runs a few extra things here.

Unfortunately DeletionUserId was not indexed and there was locking on that table at the time, causing your merge to not complete properly (some additional account magic happens after the child user is deleted). The table has grown such that this column just needed an index (yes, when things get big you need indexes for deletes as well as selects!). It shouldn't happen again, for this reason anyway.

Merges can and will fail in other spectacular ways in the future, of this I'm sure. When those crop up, we'll have the same very detailed logging in place to track them down too.

share|improve this answer
Index all the things. – BoltClock's a Unicorn Sep 28 '12 at 10:51

You must log in to answer this question.

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