From: | Markus Wanner <markus(at)bluegap(dot)ch> |
---|---|
To: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
Cc: | Andrew Dunstan <andrew(at)dunslane(dot)net>, Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>, Aidan Van Dyk <aidan(at)highrise(dot)ca>, Simon Riggs <simon(at)2ndquadrant(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Re: [COMMITTERS] pgsql: Efficient transaction-controlled synchronous replication. |
Date: | 2011-03-18 09:27:13 |
Message-ID: | 4D832571.5030808@bluegap.ch |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers pgsql-hackers |
Hi,
sorry for being late to join that bike-shedding discussion.
On 03/07/2011 05:09 PM, Alvaro Herrera wrote:
> I think these terms are used inconsistenly enough across the industry
> that what would make the most sense would be to use the common term and
> document accurately what we mean by it, rather than relying on some
> external entity's definition, which could change (like wikipedia's).
I absolutely agree to Alvaro here.
The Wikipedia definition seems to only speak about one local and one
remote node. Requiring an ack from "at least one" remote node seems to
cover that.
Not even Wikipedia goes further in their definition and tries to explain
what 'synchronous replication' could mean in case we have more than two
nodes. A somewhat common expectation is, that all nodes would have to
ack. However, with such a requirement a single node failure brings your
cluster to a full stop. So this isn't a practical option.
Google invented the term "semi-syncronous" for something that's
essentially the same that we have, now, I think. However, I full
heartedly hate that term (based on the reasoning that there's no
semi-pregnant, either).
Others (like me) use "synchronous" or (lately rather) "eager" to mean
that only a majority of nodes need to send an ACK. I have to explain
what I mean every time.
In the end, I don't have a strong opinion either way, anymore. I'm
happy to think of the replication between the master and the one standby
that's sending an ACK first as "synchronous". (Even if those may well
be different standbies for different transactions).
Hope to have brought some light into this discussion.
Regards
Markus Wanner
From | Date | Subject | |
---|---|---|---|
Next Message | Robert Haas | 2011-03-18 12:10:46 | pgsql: Remove bogus semicolons in recoveryPausesHere. |
Previous Message | Simon Riggs | 2011-03-18 07:52:07 | Re: [COMMITTERS] pgsql: Efficient transaction-controlled synchronous replication. |
From | Date | Subject | |
---|---|---|---|
Next Message | Markus Wanner | 2011-03-18 09:51:36 | Re: I am confused after reading codes of PostgreSQL three week |
Previous Message | Heikki Linnakangas | 2011-03-18 08:48:09 | Re: Allowing multiple concurrent base backups |