Mark, On 03/18/2011 02:16 PM, MARK CALLAGHAN wrote: > We didn't invent the term, we just implemented something that Heikki > Tuuri briefly described, for example: > http://bugs.mysql.com/bug.php?id=7440
Oh, okay, good to know who to blame ;-) However, I didn't mean to offend anybody. > I do not think this sequence should be possible in a sync replication > system. But it is possible in what has been implemented for MySQL. > Thus it was named semi-sync rather than sync. Sure? Their documentation [1] isn't entirely clear on that first: "the master blocks after the commit is done and waits until at least one semisynchronous slave acknowledges that it has received all events for the transaction" and the "slave acknowledges receipt of a transaction's events only after the events have been written to its relay log and flushed to disk". But then continues to say that "[the master is] waiting for acknowledgment from a slave after having performed a commit", so this indeed sounds like the transaction is visible to other sessions before the slave ACKs. So, semi-sync may show temporary inconsistencies in case of a master failure. Wow! Regards Markus Wanner [1] MySQL 5.5 reference manual, 17.3.8. Semisynchronous Replication: http://dev.mysql.com/doc/refman/5.5/en/replication-semisync.html -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers