Re: Bogus WAL segments archived after promotion

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Heikki Linnakangas <hlinnakangas(at)vmware(dot)com>
Cc: PostgreSQL-development <pgsql-hackers(at)postgreSQL(dot)org>
Subject: Re: Bogus WAL segments archived after promotion
Date: 2015-04-01 16:12:57
Message-ID: 20150401161257.GK4466@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

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?

--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ Everyone has their own god. +

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2015-04-01 16:13:57 Re: How about to have relnamespace and relrole?
Previous Message Bruce Momjian 2015-04-01 16:09:07 Re: Re: [pgsql-pkg-debian] Updated libpq5 packages cause connection errors on postgresql 9.2