Re: 9.2.3 crashes during archive recovery - Mailing list pgsql-hackers

From Heikki Linnakangas
Subject Re: 9.2.3 crashes during archive recovery
Date
Msg-id 51262A7E.7060008@vmware.com
Whole thread Raw
In response to Re: 9.2.3 crashes during archive recovery  (Heikki Linnakangas <hlinnakangas@vmware.com>)
Responses Re: 9.2.3 crashes during archive recovery  (Michael Paquier <michael.paquier@gmail.com>)
List pgsql-hackers
On 15.02.2013 15:49, Heikki Linnakangas wrote:
> Attached is a patch for git master. The basic idea is to split
> InArchiveRecovery into two variables, InArchiveRecovery and
> ArchiveRecoveryRequested. ArchiveRecoveryRequested is set when
> recovery.conf exists. But if we don't know how far we need to recover,
> we first perform crash recovery with InArchiveRecovery=false. When we
> reach the end of WAL in pg_xlog, InArchiveRecovery is set, and we
> continue with normal archive recovery.

New version of this attached, with a few bugs fixed.

I'm thinking that this should be back-patched to 9.2, but not to earlier
branches. Before 9.2, we don't PANIC at a reference to a non-existent
page until end of recovery, even if we've already reached consistency.
The same basic issue still exists in earlier versions, though: if you
have hot_standby=on, the system will open for read-only queries too
early, before the database is consistent. But this patch is invasive
enough that I'm weary of back-patching it further, when the worst that
can happen is that there's a small window right after startup when you
can see an inconsistent database in hot standby mode. Maybe after we get
some more testing of this in 9.2 and master. Opinions on that?

- Heikki

Attachment

pgsql-hackers by date:

Previous
From: Peter Eisentraut
Date:
Subject: Re: Materialized views WIP patch
Next
From: Amit Kapila
Date:
Subject: Re: [PATCH] Add PQconninfoParseParams and PQconninfodefaultsMerge to libpq