Offline enabling/disabling of data checksums
Michael Banck <michael.banck@credativ.de>
From: Michael Banck <michael.banck@credativ.de>
To: Postgres hackers <pgsql-hackers@postgresql.org>
Cc: Michael Paquier <michael@paquier.xyz>
Date: 2018-12-21T20:16:16Z
Lists: pgsql-hackers
Attachments
- offline-activation-of-checksums_V1.patch (text/x-diff) patch
Hi, the attached patch adds offline enabling/disabling of checksums to pg_verify_checksums. It is based on independent work both Michael (Paquier) and me did earlier this year and takes changes from both, see https://github.com/credativ/pg_checksums and https://github.com/michaelpq/pg_plugins/tree/master/pg_checksums It adds an (now mandatory) --action parameter that takes either verify, enable or disable as argument. This is basically meant as a stop-gap measure in case online activation of checksums won't make it for v12, but maybe it is independently useful? Things I have not done so far: 1. Rename pg_verify_checksums to e.g. pg_checksums as it will no longer only verify checksums. 2. Rename the scan_* functions (Michael renamed them to operate_file and operate_directory but I am not sure it is worth it. 3. Once that patch is in, there would be a way to disable checksums so there'd be a case to also change the initdb default to enabled, but that required further discussion (and maybe another round of benchmarks). 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
-
Reorganize Notes section in documentation of pg_checksums
- a7cc52370b2b 12.0 landed
-
Add option -N/--no-sync to pg_checksums
- e0090c869008 12.0 landed
-
Add options to enable and disable checksums in pg_checksums
- ed308d783790 12.0 landed
-
Refactor more code logic to update the control file
- 8b938d36f744 12.0 landed
-
Rename pg_verify_checksums to pg_checksums
- 6dd263cfaa84 12.0 landed
-
Fix cross-version compatibility checks of pg_verify_checksums
- 501f58359b59 11.3 landed
- c9ae7f704c67 12.0 landed
-
Add routine able to update the control file to src/common/
- ce6afc6823fb 12.0 landed