Re: 16-bit page checksums for 9.2 - Mailing list pgsql-hackers

From Heikki Linnakangas
Subject Re: 16-bit page checksums for 9.2
Date
Msg-id 4EFAC852.3080808@enterprisedb.com
Whole thread Raw
In response to Re: 16-bit page checksums for 9.2  (Simon Riggs <simon@2ndQuadrant.com>)
Responses Re: 16-bit page checksums for 9.2  (Simon Riggs <simon@2ndQuadrant.com>)
List pgsql-hackers
On 28.12.2011 01:39, Simon Riggs wrote:
> On Tue, Dec 27, 2011 at 8:05 PM, Heikki Linnakangas
> <heikki.linnakangas@enterprisedb.com>  wrote:
>> On 25.12.2011 15:01, Kevin Grittner wrote:
>>>
>>> I don't believe that.  Double-writing is a technique to avoid torn
>>> pages, but it requires a checksum to work.  This chicken-and-egg
>>> problem requires the checksum to be implemented first.
>>
>>
>> I don't think double-writes require checksums on the data pages themselves,
>> just on the copies in the double-write buffers. In the double-write buffer,
>> you'll need some extra information per-page anyway, like a relfilenode and
>> block number that indicates which page it is in the buffer.
>
> How would you know when to look in the double write buffer?

You scan the double-write buffer, and every page in the double write 
buffer that has a valid checksum, you copy to the main storage. There's 
no need to check validity of pages in the main storage.

--   Heikki Linnakangas  EnterpriseDB   http://www.enterprisedb.com


pgsql-hackers by date:

Previous
From: Magnus Hagander
Date:
Subject: Re: Review of VS 2010 support patches
Next
From: Robert Haas
Date:
Subject: Re: Page Checksums