David Goodenough wrote:
The most obvious one that does exactly this (generic multi-master replication) is Lotus Domino. It is not a relational DB, but not sufficiently far off to stop the analogy. Domino marks each document with a binary value which identifies the server (built from a hash of the server name and the time the DB was created) and a timestamp when it was last modified, and also each document (record) has an ID (like OIDs). More recent versions also do this at a field level to avoid conflicts and speed replication. When two servers replicate
This system sounds ok for documents and general data that can always be revived via version control/history. But I can't see how this would work for financial transactions where you're dealing with money and bank accounts. Suppose I have $100 in my account. I decided to login to multiple servers and wire transfer $100 to another account on every server. And I hit submit exactly at the same time for every server so check. Sure they can resolve the conflict afterwards in terms of saying in terms of which transfer to kill off. But the fact is that my other account has that N x $100 already and I've just fleeced the bank.
---------------------------(end of broadcast)--------------------------- TIP 6: explain analyze is your friend