Re: Enabling Checksums - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: Enabling Checksums
Date
Msg-id 20121114172212.GE13888@momjian.us
Whole thread Raw
In response to Re: Enabling Checksums  (Josh Berkus <josh@agliodbs.com>)
List pgsql-hackers
On Mon, Nov 12, 2012 at 04:42:57PM -0800, Josh Berkus wrote:
> Jeff,
> 
> > OK, so here's my proposal for a first patch (changes from Simon's
> > patch):
> > 
> >   * Add a flag to the postgres executable indicating that it should use
> > checksums on everything. This would only be valid if bootstrap mode is
> > also specified.
> >   * Add a multi-state checksums flag in pg_control, that would have
> > three states: OFF, ENABLING, and ON. It would only be set to ON during
> > bootstrap, and in this first patch, it would not be possible to set
> > ENABLING.
> >   * Remove GUC and use this checksums flag everywhere.
> >   * Use the TLI field rather than the version field of the page header.
> >   * Incorporate page number into checksum calculation (already done).
> >   
> > Does this satisfy the requirements for a first step? Does it interfere
> > with potential future work?
> 
> So the idea of this implementation is that checksums is something you
> set at initdb time, and if you want checksums on an existing database,
> it's a migration process (e.g. dump and reload)?
> 
> I think that's valid as a first cut at this.

pg_upgrade will need to check for the checksum flag and throw an error
if it is present in the new cluster but not the old one.

--  Bruce Momjian  <bruce@momjian.us>        http://momjian.us EnterpriseDB
http://enterprisedb.com
 + It's impossible for everything to be true. +



pgsql-hackers by date:

Previous
From: Andrew Dunstan
Date:
Subject: Re: WIP patch: add (PRE|POST)PROCESSOR options to COPY
Next
From: Jeff Janes
Date:
Subject: Re: Further pg_upgrade analysis for many tables