Re: Quorum commit for multiple synchronous replication.

Vik Fearing <vik@2ndquadrant.fr>

From: Vik Fearing <vik@2ndquadrant.fr>
To: Michael Paquier <michael.paquier@gmail.com>, Masahiko Sawada <sawada.mshk@gmail.com>
Cc: Simon Riggs <simon@2ndquadrant.com>, Josh Berkus <josh@agliodbs.com>, Fujii Masao <masao.fujii@gmail.com>, Petr Jelinek <petr@2ndquadrant.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2016-09-21T07:18:09Z
Lists: pgsql-hackers
On 09/21/2016 08:30 AM, Michael Paquier wrote:
> On Sat, Sep 17, 2016 at 2:04 AM, Masahiko Sawada <sawada.mshk@gmail.com> wrote:
>> Since we already released 9.6RC1, I understand that it's quite hard to
>> change syntax of 9.6.
>> But considering that we support the quorum commit, this could be one
>> of the solutions in order to avoid breaking backward compatibility and
>> to provide useful user interface.
>> So I attached these patches.
> 
>  standby_config:
> -        standby_list                { $$ = create_syncrep_config("1", $1); }
> -        | FIRST NUM '(' standby_list ')'    { $$ =
> create_syncrep_config($1, $4); }
> +        standby_list                        { $$ =
> create_syncrep_config("1", $1, SYNC_REP_PRIORITY); }
> +        | ANY NUM '(' standby_list ')'        { $$ =
> create_syncrep_config($2, $4, SYNC_REP_QUORUM); }
> +        | FIRST NUM '(' standby_list ')'    { $$ =
> create_syncrep_config($2, $4, SYNC_REP_PRIORITY); }
> 
> Reading again the thread, it seems that my previous post [1] was a bit
> misunderstood. My position is to not introduce any new behavior
> changes in 9.6, so we could just make the FIRST NUM grammar equivalent
> to NUM.
> 
> [1]: https://www.postgresql.org/message-id/CAB7nPqRDvJn18e54ccNpOP1A2_iUN6-iU=4nJgmMgiAgvcSDKA@mail.gmail.com

I misunderstood your intent, then.  But I still stand by what I did
understand, namely that 'k (...)'  should mean 'any k (...)'.  It's much
more natural than having it mean 'first k (...)' and I also think it
will be more frequent in practice.
-- 
Vik Fearing                                          +33 6 46 75 15 36
http://2ndQuadrant.fr     PostgreSQL : Expertise, Formation et Support


Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Set the priorities of all quorum synchronous standbys to 1.

  2. Improve documentation and comment for quorum-based sync replication.