pgsql: Install recycled WAL segments with current timeline ID during re

From: Heikki Linnakangas <heikki(dot)linnakangas(at)iki(dot)fi>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Install recycled WAL segments with current timeline ID during re
Date: 2013-04-30 14:50:57
Message-ID: E1UXBtR-0005jm-JB@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Install recycled WAL segments with current timeline ID during recovery.

This is a follow-up to the earlier fix, which changed the recycling logic
to recycle WAL segments under the current recovery target timeline. That
turns out to be a bad idea, because installing a recycled segment with
a TLI higher than what we're recovering at the moment means that the recovery
logic will find the recycled WAL segment and try to replay it. It will fail,
but but the mere presence of such a WAL segment will mask any other, real,
file with the same log/seg, but smaller TLI.

Per report from Mitsumasa Kondo. Apply to 9.1 and 9.2, like the previous
fix. Master was already doing this differently; this patch makes 9.1 and
9.2 to do the same thing as master.

Branch
------
REL9_1_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/424cc31a3785bd01108e6f4b20941c6442d3d2d0

Modified Files
--------------
src/backend/access/transam/xlog.c | 14 +++++++++++---
1 files changed, 11 insertions(+), 3 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Simon Riggs 2013-04-30 14:52:09 pgsql: Fix pg_upgrade for 9.3 with data checksums.
Previous Message Simon Riggs 2013-04-30 14:32:42 pgsql: Revert previous temporary patch