Re: Offline enabling/disabling of data checksums

Michael Banck <michael.banck@credativ.de>

From: Michael Banck <michael.banck@credativ.de>
To: Michael Paquier <michael@paquier.xyz>
Cc: Magnus Hagander <magnus@hagander.net>, Tomas Vondra <tomas.vondra@2ndquadrant.com>, Postgres hackers <pgsql-hackers@postgresql.org>
Date: 2019-01-01T10:42:49Z
Lists: pgsql-hackers
Hi,

Am Dienstag, den 01.01.2019, 11:38 +0900 schrieb Michael Paquier:
> On Sat, Dec 29, 2018 at 11:55:43AM +0100, Michael Banck wrote:
> > Renaming applications shouldn't be a problem unless they have to be
> > moved from one binary package to another. I assume all packagers ship
> > all client/server binaries in one package, respectively (and not e.g. a
> > dedicated postgresql-11-pg_test_fsync package), this should only be a
> > matter of updating package metadata.
> > 
> > In any case, it should be identical to the xlog->wal rename.
> 
> I have poked -packagers on the matter and I am seeing no complains, so
> let's move forward with this stuff.  From the consensus I am seeing on
> the thread, we have been discussing about the following points:
> 1) Rename pg_verify_checksums to pg_checksums.
> 2) Have separate switches for each action, aka --verify, --enable and
> --disable, or a unified --action switch which can take different
> values.
> 3) Do we want to imply --verify by default if no switch is specified?
> 
> About 2), folks who have expressed an opinion are:
> - Multiple switches: Robert, Fabien, Magnus
> - Single --action switch: Michael B, Michael P

I implemented the multiple switches thing in my branch first anyway and
don't mind a lot either way; I think the consensus goes towards multiple
switches.

> About 3), aka --verify implied if no action is specified:
> - In favor: Fabien C, Magnus
> - Against: Michael P

I think I'm in favor as well.

I wonder whether we (or packagers) could then just ship a
pg_verify_checksums -> pg_checksums symlink for compatibility if we/they
want, as the behaviour would stay the same?


Michael

-- 
Michael Banck
Projektleiter / Senior Berater
Tel.: +49 2166 9901-171
Fax:  +49 2166 9901-100
Email: michael.banck@credativ.de

credativ GmbH, HRB Mönchengladbach 12080
USt-ID-Nummer: DE204566209
Trompeterallee 108, 41189 Mönchengladbach
Geschäftsführung: Dr. Michael Meskes, Jörg Folz, Sascha Heuer

Unser Umgang mit personenbezogenen Daten unterliegt
folgenden Bestimmungen: https://www.credativ.de/datenschutz


Commits

  1. Reorganize Notes section in documentation of pg_checksums

  2. Add option -N/--no-sync to pg_checksums

  3. Add options to enable and disable checksums in pg_checksums

  4. Refactor more code logic to update the control file

  5. Rename pg_verify_checksums to pg_checksums

  6. Fix cross-version compatibility checks of pg_verify_checksums

  7. Add routine able to update the control file to src/common/