I was looking at @oskardudycz.bsky.social post on ordering & consistency and saw this part:
> Imagine a bank processes a withdrawal before a deposit. A user with a $0 balance may see a failed transaction, even though funds were deposited seconds earlier.
https://www.architecture-weekly.com/i/151818131/why-grouping-matters
> Imagine a bank processes a withdrawal before a deposit. A user with a $0 balance may see a failed transaction, even though funds were deposited seconds earlier.
https://www.architecture-weekly.com/i/151818131/why-grouping-matters
Comments
The business world isn't nearly as mathematical as developers would like to believe. For example:
https://udidahan.com/2014/11/16/watch-out-for-superficial-invariants/
It turns out the banks have been INTENTIONALLY reordering transactions to cause accounts to get overdrawn so that they can charge overdraft fees - and there was a lawsuit about that:
https://www.schmidtandclark.com/bank-overdraft-fees-lawsuit
But it's important to spread this message because they will often go about building very elaborate infrastructure to mitigate situations that the business actually WANTS TO HAVE HAPPEN.
https://udidahan.com/2010/08/31/race-conditions-dont-exist/