On Tue, 2009-06-09 at 17:28 -0400, Tom Lane wrote: > Simon Riggs <si...@2ndquadrant.com> writes: > > A corrupt record of a block number would do this in XLogReadBuffer() if > > we had full page writes enabled. But it would have to be corrupt between > > setting it correctly and the CRC check on the WAL record. Which is a > > fairly small window of believability. > > > Should there be a sanity check on how far a relation can be extended in > > recovery? > > As you say, that's not a highly believable theory. I'd prefer not to > put an arbitrary limit into the recovery code unless we can positively > pin this down as the source of the problem. > > Is there any particular reason to suppose that the empty pages appeared > during a crash recovery?
Probably because my Rorschach tests all look like database recoveries. > Have you read through md.c? I seem to recall there are some slightly > squirrelly choices made there about segment-extension behavior. Maybe > it could've done the wrong thing here during normal operation. Yes, but will do again if you think I should check. -- Simon Riggs www.2ndQuadrant.com PostgreSQL Training, Services and Support -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers