Facebooks’ eventually consistent database has been under real strain lately. It’s a great example of the difference between social media and the web 2.0 style architectures, and a banking application. In this example, facebook has notified me three separate ways that a conversation had been updated. Yet almost 20-seconds after the first notification, the data I can see hasn’t been updated. The facebook comment made by Mike in the top-right, should be appended to the bottom of the pop-out window.
Now, imagine this was your bank account. A transaction comes in that debits $10,000 from your account. Then a query comes in that shows the $10,000 is still in your account, another transaction is then initiated that deducts $10,000 from your account. What got debited, and if you only had $15,000 in your account, how much do you have now?
And that’s a great example of the difference between eventually consistent and ACID based transaction-based systems. Many but not all IT Professionals understand this. Make sure yours does. In this case it could be the backend database consistency, ie there are multiple copies and they don’t match, or there could be multiple backend copies and the copy in the browser cache, does or doesn’t match. Either way “Houston, we have a problem”.