4 ms·
I'm sure banks do use transactions, just not in a distributed system. It's hardly possible to use transactions when multiple entities are involved and you would
by aneth4 14y ago
I'm sure banks do use transactions, just not in a distributed system. It's hardly possible to use transactions when multiple entities are involved and you wouldn't want to anyway because you want a record of the failure, and that money actually moved.
I suspect they do use transactions when, for instance, inserting two rows in a double-entry register.
- babebridou 14y agoIn practice you can work around transactions in double-entry registers with UUIDs, and then fixing the inconsistent edge cases at reporting time.
- jacques_chester 14y agoIn practice doing this for a banking account system will land you in jail. Banks follow the IFRS or GAAP rules and they follow them because to do otherwise is just a bucket full of indictment.
- babebridou 14y agoIFRS and GAAP require real-time consistency? Because that's what I meant with edge cases, entries that are split between two accounting periods. You deal with them in eventually consistent systems just as you would in an ACID system: wait and interpret it when the data is complete.
- jacques_chester 14y agoTransactions that span two periods basically don't exist in accounting. It's assigned to either side, or you do two different transactions. One way or another, the goal is to ensure that you don't have uncertainty. Ever dealt with a company that's "closing the books?"