Thanks Michael,
So everytime after promoting Slave to become master (either manually or 
automatic), just stop Slave2 and run pg_rewind on slave2 against the new maser 
(old slave1). And when old master server is available again, use pg_rewind on 
that serve as well against new master to return to original configuration.

-----Original Message-----
From: Michael Paquier [mailto:mich...@paquier.xyz] 
Sent: Tuesday, 6 March 2018 3:54 PM
To: Dylan Luong <dylan.lu...@unisa.edu.au>
Cc: pgsql-generallists.postgresql.org <pgsql-general@lists.postgresql.org>
Subject: Re: Resync second slave to new master

On Tue, Mar 06, 2018 at 04:45:10AM +0000, Dylan Luong wrote:
> After a failover (promote) to the Slave1,  is it easily resync the
> Slave2 to the new master (old slave1)? Do we need to do  full rebuild 
> of the Slave2 from new master everytime we failover to Slave1 from 
> Master? Can we use pg_rewind on Slave2 to resyn it with new master 
> (old slave1)?

After promoting slave 1, it could be possible that some records have slipped to 
slave 2 from the primary.  In this case, a rewind would be recommended.  You 
should be careful that your slave 2 has not received WAL to a position newer 
than where WAL has forked because of the promotion.  If that happened, then a 
rewind would be necessary before replugging slave 2 to the newly-promoted 
server.  Be very careful with your failover flow here.  pg_rewind also would 
not run if it finds that the target server does not need a rewind, so you could 
stop the slave 2, and run pg_rewind unconditionally to keep things simple.
--
Michael

Reply via email to