Re: Offline enabling/disabling of data checksums

Magnus Hagander <magnus@hagander.net>

From: Magnus Hagander <magnus@hagander.net>
To: Michael Paquier <michael@paquier.xyz>
Cc: Sergei Kornilov <sk@zsrv.org>, Fabien COELHO <coelho@cri.ensmp.fr>, Michael Banck <michael.banck@credativ.de>, PostgreSQL Developers <pgsql-hackers@lists.postgresql.org>
Date: 2019-03-14T14:23:59Z
Lists: pgsql-hackers
On Thu, Mar 14, 2019 at 1:23 AM Michael Paquier <michael@paquier.xyz> wrote:

> On Wed, Mar 13, 2019 at 12:24:21PM +0100, Magnus Hagander wrote:
> > Enabling or disabling the checksums offline on the master quite clearly
> > requires a rebuild of the standby, there is no other way (this is one of
> > the reasons for the online enabling in that patch, so I still hope we can
> > get that done -- but not for this version).
>
> I am curious to understand why this would require a rebuild of the
> standby.  Technically FPWs don't update the checksum of a page when it
> is WAL-logged, so even if a primary and a standby don't agree on the
> checksum configuration, it is the timing where pages are flushed in
> the local instance which counts for checksum correctness.
>

Are you suggesting we should support running with a master with checksums
on and a standby with checksums off in the same cluster? That seems.. Very
fragile.

-- 
 Magnus Hagander
 Me: https://www.hagander.net/ <http://www.hagander.net/>
 Work: https://www.redpill-linpro.com/ <http://www.redpill-linpro.com/>

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/