From: | Michael Paquier <michael(at)paquier(dot)xyz> |
---|---|
To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
Subject: | pgsql: Skip foreign tablespaces when running pg_checksums/pg_verify_che |
Date: | 2020-02-27 06:39:07 |
Message-ID: | E1j7Cp9-0006nT-S6@gemulon.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Skip foreign tablespaces when running pg_checksums/pg_verify_checksums
Attempting to use pg_checksums (pg_verify_checksums in 11) on a data
folder which includes tablespace paths used across multiple major
versions would cause pg_checksums to scan all directories present in
pg_tblspc, and not only marked with TABLESPACE_VERSION_DIRECTORY. This
could lead to failures when for example running sanity checks on an
upgraded instance with --check. Even worse, it was possible to rewrite
on-disk pages with --enable for a cluster potentially online.
This commit makes pg_checksums skip any directories not named
TABLESPACE_VERSION_DIRECTORY, similarly to what is done for base
backups.
Reported-by: Michael Banck
Author: Michael Banck, Bernd Helmle
Discussion: https://postgr.es/m/62031974fd8e941dd8351fbc8c7eff60d59c5338.camel@credativ.de
backpatch-through: 11
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/428a2609ef64b69d709418a50e192ff11a2643f1
Modified Files
--------------
src/bin/pg_checksums/pg_checksums.c | 47 ++++++++++++++++++++++++++++++++++-
src/bin/pg_checksums/t/002_actions.pl | 9 ++++++-
2 files changed, 54 insertions(+), 2 deletions(-)
From | Date | Subject | |
---|---|---|---|
Next Message | Michael Paquier | 2020-02-27 13:00:03 | pgsql: Remove TAP test for createdb --lc-ctype |
Previous Message | Michael Paquier | 2020-02-27 05:11:12 | Re: pgsql: createdb: Fix quoting of --encoding, --lc-ctype and --lc-collate |