Earlier quoted context omitted.
As you say, the low-level operations in banking do provide atomicity, which are often lacking in distributed databases. Also, the banking system does have the system of compensating transactions (e.g. returned checks) when constraints are violated, as well as an extensive system of auditing to maintain consistency. Do most distributed systems have the ability to detect inconsistency? How do they manage to correct pro…
> Do most distributed systems have the ability to detect inconsistency? They do if you build them to have them. Your bank account works without requiring consistency because every operation is commutative: You never do anything that says "set account to value x". You have operations like "deposit x" and "withdraw x". For operations that require you move money from one account to another, you need to guarantee that bo…
For example: addition is commutative, because 1+2 = 2+1
Subtraction, however, isn't.
Since a transfer is basically a transfer from one account to the other, it couldn't possibly be commutative in a mathematical sense.
I suspect there might be a better term for the property you are trying to name.
"Atomic" seems adequate to me...