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. We'll need interruptable VACUUM CHECKSUM later, but we don't have to have it for the first version of the feature. -- Josh Berkus PostgreSQL Experts Inc. http://pgexperts.com -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers