Re: Timeline Conflict

From: Fujii Masao <masao(dot)fujii(at)gmail(dot)com>
To: senthilnathan <senthilnathan(dot)t(at)gmail(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Timeline Conflict
Date: 2011-08-03 01:38:28
Message-ID: CAHGQGwEeqoGECXY1XF95Gx2YdPGZ6G=Fbxjzin_jJ_WgwCmSFg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Tue, Aug 2, 2011 at 2:59 PM, senthilnathan <senthilnathan(dot)t(at)gmail(dot)com> wrote:
> We have system(Cluster) with Master replicating to 2 stand by servers.
>
> i.e
>
> M   |-------> S1
>
>      |-------> S2
>
> If master failed, we do a trigger file at S1 to take over as master. Now we
> need to re-point the standby S2 as slave for the new master (i.e S1)
>
> While trying to start standby S2,there is a conflict in timelines, since on
> recovery it generates a new line.
>
> Is there any way to solve this issue?

Basically you need to take a fresh backup from new master and restart
the standby
using it. But, if S1 and S2 share the archive, S1 is ahead of S2
(i.e., the replay location
of S1 is bigger than or equal to that of S2), and
recovery_target_timeline is set to
'latest' in S2's recovery.conf, you can skip taking a fresh backup
from new master.
In this case, you can re-point S2 as a standby just by changing
primary_conninfo in
S2's recovery.conf and restarting S2. When S2 restarts, S2 reads the
timeline history
file which was created by S1 at failover and adjust its timeline ID to
S1's. So timeline
conflict doesn't happen.

Regards,

--
Fujii Masao
NIPPON TELEGRAPH AND TELEPHONE CORPORATION
NTT Open Source Software Center

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Simon Riggs 2011-08-03 03:18:19 Re: Timeline Conflict
Previous Message Simon Riggs 2011-08-02 20:21:47 Re: Timeline Conflict