On Sun, Dec 18, 2011 at 10:14:38AM +0200, Heikki Linnakangas wrote: > On 17.12.2011 23:33, David Fetter wrote: > >What: > > > > Please find attached a patch for 9.2-to-be which implements page > > checksums. It changes the page format, so it's an initdb-forcing > > change. > > > >How: > > In order to ensure that the checksum actually matches the hint > > bits, this makes a copy of the page, calculates the checksum, then > > sends the checksum and copy to the kernel, which handles sending > > it the rest of the way to persistent storage. > >... > >If this introduces new failure modes, please detail, and preferably > >demonstrate, just what those new modes are. > > Hint bits, torn pages -> failed CRC. See earlier discussion: > > http://archives.postgresql.org/pgsql-hackers/2009-11/msg01975.php
The patch requires that full page writes be on in order to obviate this problem by never reading a torn page. Instead, copy of the page has already hit storage before the torn write occurs. Cheers, David. -- David Fetter <da...@fetter.org> http://fetter.org/ Phone: +1 415 235 3778 AIM: dfetter666 Yahoo!: dfetter Skype: davidfetter XMPP: david.fet...@gmail.com iCal: webcal://www.tripit.com/feed/ical/people/david74/tripit.ics Remember to vote! Consider donating to Postgres: http://www.postgresql.org/about/donate -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers