On 27 June 2017 at 13:24, Craig Ringer <cr...@2ndquadrant.com> wrote:

> On 21 June 2017 at 17:30, sanyam jain <sanyamjai...@live.in> wrote:
> > Hi,
> > After changing
> > sendTimeLineIsHistoric = state->currTLI == ThisTimeLineID;
> > to
> > sendTimeLineIsHistoric = state->currTLI != ThisTimeLineID;
> >
> > I was facing another issue.
> > On promotion of a cascaded server ThisTimeLineID in the standby server
> > having logical slot becomes 0.
> > Then i added a function call to GetStandbyFlushRecPtr in
> > StartLogicalReplication which updates ThisTimeLineID.
> >
> > After the above two changes timeline following is working.But i'm not
> sure
> > whether this is correct or not.In any case please someone clarify.
>
> That's a reasonable thing to do, and again, I thought I did it in a
> later revision, but apparently not (?). I've been working on other
> things and have lost track of progress here a bit.
>
> I'll check more closely.
>
>
Hi all.

I've had to backburner this due to other work. In the process of looking
into an unrelated bug recently though, I noticed that the way we handle
snapshots may not be safe for historic snaphots on a standby. Historic
snapshots don't ever set takenDuringRecovery, which allows heapgetpage to
trust PD_IS_VISIBLE on a page. According to comments on heapgetpage that
could be an issue.

Minor compared to some of the other things that'll come up when finishing
this off, but worth remembering.


-- 
 Craig Ringer                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services

Reply via email to