Re: Hot standby 9.2.6 -> 9.2.6 PANIC: WAL contains references to invalid pages - Mailing list pgsql-bugs

From Tom Lane
Subject Re: Hot standby 9.2.6 -> 9.2.6 PANIC: WAL contains references to invalid pages
Date
Msg-id 19552.1389649001@sss.pgh.pa.us
Whole thread Raw
In response to Re: Hot standby 9.2.6 -> 9.2.6 PANIC: WAL contains references to invalid pages  (Heikki Linnakangas <hlinnakangas@vmware.com>)
Responses Re: Hot standby 9.2.6 -> 9.2.6 PANIC: WAL contains references to invalid pages
List pgsql-bugs
Heikki Linnakangas <hlinnakangas@vmware.com> writes:
> Good point. Normally, we expect the checksum to match on all pages that
> we read during WAL replay, because full page writes will initialize any
> page that is modified to an untorn state, before it's ever read. But we
> can't rely on that in the extra read that btree_xlog_vacuum() does.

But it's not an "extra" read.  It's replicating a read that was done
on the master in the btvacuumpage() scan.  AFAICS the only way to fail
on the slave and not the master is if the slave has inconsistent data,
in which case you're at hazard of failing anyway.

>> Now, you could argue that that shouldn't be the case because we're only
>> entering that codepath once STANDBY_SNAPSHOT_READY and you might be
>> right...

> I don't think that saves us. standbyMode can be STANDBY_SNAPSHOT_READY,
> before we reach consistency. Adding a check for reachedConsistency,
> though, ought to fix it.

Huh?  Surely we're not letting queries in until we're consistent.

            regards, tom lane

pgsql-bugs by date:

Previous
From: Heikki Linnakangas
Date:
Subject: Re: Hot standby 9.2.6 -> 9.2.6 PANIC: WAL contains references to invalid pages
Next
From: Andres Freund
Date:
Subject: Re: Hot standby 9.2.6 -> 9.2.6 PANIC: WAL contains references to invalid pages