On 21 June 2017 at 17:30, sanyam jain <sanyamjain22@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.