Re: Block-level CRC checks - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: Block-level CRC checks
Date
Msg-id 200810031432.m93EWXg04099@momjian.us
Whole thread Raw
In response to Re: Block-level CRC checks  (Brian Hurt <bhurt@janestcapital.com>)
List pgsql-hackers
Brian Hurt wrote:
> OK, I have a stupid question- torn pages are a problem, but only during 
> recovery.  Recovery is (I assume) a fairly rare condition- if data 
> corruption is going to happen, it's most likely to happen during normal 
> operation.  So why not just turn off CRC checksumming during recovery, 
> or at least treat it as a much less critical error?  During recovery, if 
> the CRC checksum matches, we can assume the page is good- not only not 
> corrupt, but not torn either.  If the CRC checksum doesn't match, we 
> don't panic, but maybe we do more careful analysis of the page to make 
> sure that only the hint bits are wrong.  Or maybe not.  It's only during 
> normal operation that a CRC checksum failure would be considered critical.

Interesting question.  The problem is that we don't read all pages in
during recovery.  One idea would be to WAL log the page numbers that
might be torn and recompute the checksums on those pages during
recovery.

--  Bruce Momjian  <bruce@momjian.us>        http://momjian.us EnterpriseDB
http://enterprisedb.com
 + If your life is a hard drive, Christ can be your backup. +


pgsql-hackers by date:

Previous
From: "Dawid Kuroczko"
Date:
Subject: Re: Block-level CRC checks
Next
From: Aidan Van Dyk
Date:
Subject: Re: Block-level CRC checks