Skip site navigation (1) Skip section navigation (2)

Re: Block-level CRC checks

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Gregory Stark <stark(at)enterprisedb(dot)com>
Cc: Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Block-level CRC checks
Date: 2008-11-07 19:11:40
Message-ID: 20081107191140.GE5507@alvh.no-ip.org (view raw or flat)
Thread:
Lists: pgsql-hackers
Alvaro Herrera wrote:
> Alvaro Herrera wrote:
> 
> > Hmm, oh I see another problem here -- the bit is not restored when
> > replayed heap_update's WAL record.  I'm now wondering what other bits
> > are set without much care about correctly restoring them during replay.
> 
> I'm now wondering whether it'd be easier to just ignore pd_flags in
> calculating the checksum.

Okay, so this is what I've done.  pd_flags is skipped.  Also the WAL
routine logs both HeapTupleHeader infomasks and ItemId->lp_flags.  On
the latter point I'm not 100% sure of the cases where lp_flags must be
logged; right now I'm only logging if the item is marked as "having
storage" (the logic being that if an item does not have storage, then
making it have requires a WAL entry, and vice versa).

(This version has some debugging log entries which are obviously only
WIP material.)

-- 
Alvaro Herrera                                http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

Attachment: blkcrc-10.patch
Description: text/x-diff (29.7 KB)

In response to

pgsql-hackers by date

Next:From: Tom LaneDate: 2008-11-07 19:15:38
Subject: Re: [RRR] Tests citext casts
Previous:From: Tom LaneDate: 2008-11-07 18:58:04
Subject: Re: Distinct types

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group