On Thu, Oct 2, 2008 at 7:42 PM, Jonah H. Harris <[EMAIL PROTECTED]> wrote:
>> It's not the buffeting it's the checksum. The problem arises if a page is
>> read in but no wal logged modifications are done against it. If a hint bit
>> is modified it won't be wal logged but the page is marked dirty.
>
> Ahhhhh.  Thanks Greg.  Let me look into this a bit before I respond :)

Hmm, how about, when reading a page:

read the page
if checksum mismatch {
    flip the hint bits [1]
    if checksum mismatch {
          ERROR
    } else {
          emit a warning, 'found a torn page'
    }
}

...that is assuming we know which bit to flip
and that we accept the check will be a bit
weaker. :)  OTOH this shouldn't happen too
often, so performance should matter much.

My 0.02

   Best regards,
      Dawid Kuroczko

[1]: Of course it would be more efficient to flip
the checksum, but it would be tricky. :)
-- 
  ..................        ``The essence of real creativity is a certain
 : *Dawid Kuroczko* :         playfulness, a flitting from idea to idea
 : [EMAIL PROTECTED] :     without getting bogged down by fixated demands.''
 `..................'  Sherkaner Underhill, A Deepness in the Sky, V. Vinge

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to