Re: Hot standby 9.2.6 -> 9.2.6 PANIC: WAL contains references to invalid pages
От | Andres Freund |
---|---|
Тема | Re: Hot standby 9.2.6 -> 9.2.6 PANIC: WAL contains references to invalid pages |
Дата | |
Msg-id | 20140113202600.GB14861@awork2.anarazel.de обсуждение исходный текст |
Ответ на | Re: Hot standby 9.2.6 -> 9.2.6 PANIC: WAL contains references to invalid pages (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: Hot standby 9.2.6 -> 9.2.6 PANIC: WAL contains references to invalid pages
Re: Hot standby 9.2.6 -> 9.2.6 PANIC: WAL contains references to invalid pages |
Список | pgsql-bugs |
On 2014-01-13 15:19:06 -0500, Tom Lane wrote: > >> ISTM we can just use RBM_ZERO_ON_ERROR instead of RBM_NORMAL. > > > That'd be horrendously dangerous. It would silently zap any page with > > any error on it. But we could add a new ReadBufferMode that returns > > InvalidBuffer on error, without zeroing the page. > > The important point is not just that it not damage the page, but that > it not log it as invalid. I concur that the right fix requires a > new operating mode for XLogReadBufferExtended, perhaps RBM_NORMAL_ZERO_OK. > I think the spec for this should be that if the page doesn't exist or > contains zeroes, we return InvalidBuffer without logging the page number > as invalid. The doesn't-exist case is justified by the expectation that > there will be a later RBM_NORMAL call for a larger page number, which will > result in a suitable complaint if the page range isn't there. That's a sensible way to go, yes. But I wonder if we wouldn't end up with less complicated code if we added a variant of ReadBuffer that only returns a buffer from cache if already present in s_b. I started to prototype something like RBM_NORMAL_ZERO_OK shortly after Heikki's message and it seems to quickly turn a bit ugly because the surrounding code isn't really ready to deal with not returning a buffer. And for the purpose of that redo routine, that'd actually be better. > Will go fix this if there's not any objection to that plan. Fine with me! Greetings, Andres Freund -- Andres Freund http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services
В списке pgsql-bugs по дате отправления: