Re: [HACKERS] Logical decoding on standby
От | Craig Ringer |
---|---|
Тема | Re: [HACKERS] Logical decoding on standby |
Дата | |
Msg-id | CAMsr+YHQxUFJyDBMob2L_tDKLnrcozivZQDvD45R=P6BUXckCw@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: [HACKERS] Logical decoding on standby (Craig Ringer <craig@2ndquadrant.com>) |
Список | pgsql-hackers |
On 27 June 2017 at 13:24, Craig Ringer <craig@2ndquadrant.com> wrote:
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.
В списке pgsql-hackers по дате отправления: