Re: Switching timeline over streaming replication

From: Amit Kapila <amit(dot)kapila(at)huawei(dot)com>
To: "'Heikki Linnakangas'" <hlinnakangas(at)vmware(dot)com>
Cc: "'PostgreSQL-development'" <pgsql-hackers(at)postgreSQL(dot)org>, "'Thom Brown'" <thom(at)linux(dot)com>
Subject: Re: Switching timeline over streaming replication
Date: 2012-11-22 12:25:35
Message-ID: 00a301cdc8ac$799a2e10$6cce8a30$@kapila@huawei.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wednesday, November 21, 2012 11:36 PM Heikki Linnakangas wrote:
> On 20.11.2012 15:33, Amit Kapila wrote:
> > Defect-2:
> > 1. start primary A
> > 2. start standby B following A
> > 3. start cascade standby C following B.
> > 4. Start another standby D following C.
> > 5. Execute the following commands in the primary A.
> > create table tbl(f int);
> > insert into tbl values(generate_series(1,1000));
> > 6. Promote standby B.
> > 7. Execute the following commands in the primary B.
> > insert into tbl values(generate_series(1001,2000));
> > insert into tbl values(generate_series(2001,3000));
> >
> > The following logs are observed on standby C:
> >
> > LOG: restarted WAL streaming at position 0/7000000 on tli 2
> > ERROR: requested WAL segment 000000020000000000000007 has
> > already been removed
> > LOG: record with zero length at 0/7028190
> > LOG: record with zero length at 0/7048540
> > LOG: out-of-sequence timeline ID 1 (after 2) in log segment
> > 000000020000000000000007, offset 0
>
> I propose the attached patch (against 9.2) to fix that. This should be
> backpatched to 9.0, where standby_mode was introduced. The code was the
> same in 8.4, too, but AFAICS there was no problem there because 8.4
> never tried to re-open the same WAL segment after replaying some of it.

Fixed.

With Regards,
Amit Kapila.

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrew Dunstan 2012-11-22 12:36:46 Re: WIP json generation enhancements
Previous Message Etsuro Fujita 2012-11-22 12:10:08 Re: WIP patch: add (PRE|POST)PROCESSOR options to COPY