Re: Block-level CRC checks

From: "Jonah H(dot) Harris" <jonah(dot)harris(at)gmail(dot)com>
To: "Alvaro Herrera" <alvherre(at)commandprompt(dot)com>
Cc: "Greg Stark" <greg(dot)stark(at)enterprisedb(dot)com>, "Aidan Van Dyk" <aidan(at)highrise(dot)ca>, "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>, "Heikki Linnakangas" <heikki(dot)linnakangas(at)enterprisedb(dot)com>, "Brian Hurt" <bhurt(at)janestcapital(dot)com>, "Pg Hackers" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Block-level CRC checks
Date: 2008-10-02 18:04:56
Message-ID: 36e682920810021104t32a3ff3by1d616961272d1c46@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Oct 2, 2008 at 1:44 PM, Alvaro Herrera
<alvherre(at)commandprompt(dot)com> wrote:
> How about when a hint bit is set and the page is not already dirty, set
> the checksum to the "always valid" value? The problem I have with this
> idea is that there would be lots of pages excluded from the CRC checks,
> a non-trivial percentage of the time.

I don't like that because it trades-off corruption detection (the
whole point of this feature) for a slight performance improvement.

> Maybe we could mix this with Simon's approach to counting hint bit
> setting, and calculate a valid CRC on the page every n-th non-logged
> change.

I still think we should only calculate checksums on the actual write.
And, this still seems to have an issue with WAL, unless Simon's
original idea somehow included recording hint bit settings/dirtying
the page in WAL.

--
Jonah H. Harris, Senior DBA
myYearbook.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Aidan Van Dyk 2008-10-02 18:10:34 Re: Block-level CRC checks
Previous Message Jonah H. Harris 2008-10-02 18:01:22 Re: Block-level CRC checks