Your identity just got OWNED, or “How to figure out OwnerId, CommitterId, and why isn’t the committer always the owner”

The identity trinity: tbl_Changeset, tbl_VCIdentityMap and Constants

First of all, please note that this post applies to TFS2013. Earlier or later versions may have a different structure, leaving this deprecated or invalid for you.

Now, I’m posting this just out of awareness, because I had to look around a lot before I figured out how some of the tables of the project collection database are related. Usually we’d see these kinds of relationships denoted by foreign keys and whatnot, and I don’t exactly know the reason this isn’t the case here. Must’ve a motive.

Not many people will find use in this, but it may be very important if you’re customizing TFS or migrating it. Or just for any shadowy reason you might have. Click here to read more.