I'm getting really tired of these meta requests!, so how about we go ahead and fix this syncing issue, how's that sound?
A change just rolled out across the network where these out-of-sync issues will begin fixing themselves. Here's a rundown:
We load your user info for the top of the profile, then we load your account list either from cache of from APIv2 then cache it. How does your rep get there? let's take a trip!
- You get an upvote, yay you! (or a downvote, boooooooo, or maybe an accept, yay again!)
- An event is sent to a redis queue (the queue of great justice)
- A background process churns through the queue, saving each event to a central database
- The API reads from this database
- The application gets the data from the API
- You see the data!
Due to the event queue being lagged you would often see users with just-changed rep being off if we didn't substitute the value known on the local site when that site shows up in your account list. But because we do that, it looks odd on other sites when (for whatever reason) that rep-change event never made it to the central database.
Now, when we do this replacement we explicitly look for a mis-match, and if we find it we'll fire off another event so the central DB gets updated with the proper reputation and badges. When that happens plus 10 minutes for the cache to expire your reputation should be updated correctly when viewed on all sites.