Re: Bogus WAL segments archived after promotion

From: Heikki Linnakangas <hlinnaka(at)iki(dot)fi>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: PostgreSQL-development <pgsql-hackers(at)postgreSQL(dot)org>
Subject: Re: Bogus WAL segments archived after promotion
Date: 2015-04-13 14:57:31
Message-ID: 552BD95B.1070802@iki.fi
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 04/01/2015 07:12 PM, Bruce Momjian wrote:
> On Fri, Dec 19, 2014 at 10:26:34PM +0200, Heikki Linnakangas wrote:
>> On 12/19/2014 02:55 PM, Heikki Linnakangas wrote:
>>> I'm thinking that we should add a step to promotion, where we scan
>>> pg_xlog for any segments higher than the timeline switch point, and
>>> remove them, or mark them with .done so that they are not archived.
>>> There might be some real WAL that was streamed from the primary, but not
>>> yet applied, but such WAL is of no interest to that server anyway, after
>>> it's been promoted. It's a bit disconcerting to zap WAL that's valid,
>>> even if doesn't belong to the current server's timeline history, because
>>> as a general rule it's good to avoid destroying evidence that might be
>>> useful in debugging. There isn't much difference between removing them
>>> immediately and marking them as .done, though, because they will
>>> eventually be removed/recycled anyway if they're marked as .done.
>>
>> This is what I came up with. This patch removes the suspect segments
>> at timeline switch. The alternative of creating .done files for them
>> would preserve more evidence for debugging, but OTOH it would also
>> be very confusing to have valid-looking WAL segments in pg_xlog,
>> with .done files, that in fact contain garbage.
>>
>> The patch is a bit longer than it otherwise would be, because I
>> moved the code to remove a single file from RemoveOldXlogFiles() to
>> a new function. I think that makes it more readable in any case,
>> simply because it was so deeply indented in RemoveOldXlogFiles.
>
> Where are we on this?

I didn't hear any better ideas, so committed this now.

- Heikki

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Heikki Linnakangas 2015-04-13 15:32:13 Re: pg_rewind tests
Previous Message Jim Nasby 2015-04-13 14:25:24 Re: EvalPlanQual behaves oddly for FDW queries involving system columns