Re: synch streaming replication question - Mailing list pgsql-general

From Thomas Munro
Subject Re: synch streaming replication question
Date
Msg-id CAEepm=0Q8vTdyxW+AQEUccmeiL6AgT=fW2VKnUsMj=WweCJevQ@mail.gmail.com
Whole thread Raw
In response to Re: synch streaming replication question  (Michael Paquier <michael.paquier@gmail.com>)
Responses Re: synch streaming replication question
List pgsql-general
On Tue, Feb 23, 2016 at 3:09 PM, Michael Paquier
<michael.paquier@gmail.com> wrote:
> On Tue, Feb 23, 2016 at 6:43 AM, John Wiencek <jwiencek3@comcast.net> wrote:
>
>> I have a three node cluster using streaming replication configured as
>> follows:
>> One synch node and one asynch node.
>> If my synch node is down the master node is hung until that node is brought
>> back on line.
>>
>> Two questions:
>> 1.  Is this the expected action on my master?  It makes sense if it is since
>> the master is waiting for an ack from the synch node.
>
> Yes, when synchronous_commit = on, the default values that you should
> have, the master will wait from standby the confirmation that the WAL
> record for the commit has been flushed;
> http://www.postgresql.org/docs/devel/static/runtime-config-replication.html#RUNTIME-CONFIG-REPLICATION-MASTER
>
>> 2. Is there anyway to configure my cluster so I have a synch node but not
>> have my master node “HANG” if the synch node is down?
>
> You can do that at transaction level for example by disabling
> synchronous_commit.

Or you could configure both of your standbys as synchronous standbys.
Only one of them will actually be a synchronous standby at a time, and
the other one will take over that role if the first one is down, so
your system won't hang but you'll still have the sync standby
guarantee.

--
Thomas Munro
http://www.enterprisedb.com


pgsql-general by date:

Previous
From: Michael Paquier
Date:
Subject: Re: synch streaming replication question
Next
From: John Wiencek
Date:
Subject: repmgr faiover question