Heikki Linnakangas <heikki.linnakan...@enterprisedb.com> wrote: >> Unless we have a transaction manager and do proper distributed >> transactions, how do you avoid edge conditions like that? > > Yeah, I guess you can't. You can guarantee that a commit is > always safely flushed first in the master, or in the standby, but > without two-phase commit you can't guarantee atomicity. It's > useful to know which behavior you get, though, so that you can > take it into account in your failover procedure. It strikes me that if you always write the commit for the master first, there's at least a possibility of developing a heuristic for getting a slave back in sync should the connection break. If you randomly update zero to N slaves and then have a failure, I don't see much hope. -Kevin
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers