pgsql: Extend PageIsVerified() to handle more custom options - Mailing list pgsql-committers

From Michael Paquier
Subject pgsql: Extend PageIsVerified() to handle more custom options
Date
Msg-id E1kZOuR-0006Zn-JE@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Extend PageIsVerified() to handle more custom options

This is useful for checks of relation pages without having to load the
pages into the shared buffers, and two cases can make use of that: page
verification in base backups and the online, lock-safe, flavor.

Compatibility is kept with past versions using a routine that calls the
new extended routine with the set of options compatible with the
original version.  Contrary to d401c576, a macro cannot be used as there
may be external code relying on the presence of the original routine.

This is applied down to 11, where this will be used by a follow-up
commit addressing a set of issues with page verification in base
backups.

Extracted from a larger patch by the same author.

Author: Anastasia Lubennikova
Reviewed-by: Michael Paquier, Julien Rouhaud
Discussion: https://postgr.es/m/608f3476-0598-2514-2c03-e05c7d2b0cbd@postgrespro.ru
Backpatch-through: 11

Branch
------
REL_12_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/a8795445bc1bacc98d54ad746809bcb638700aca

Modified Files
--------------
src/backend/catalog/storage.c       |  3 ++-
src/backend/storage/buffer/bufmgr.c |  6 ++++--
src/backend/storage/page/bufpage.c  | 32 ++++++++++++++++++++++++++------
src/include/storage/bufpage.h       |  7 +++++++
4 files changed, 39 insertions(+), 9 deletions(-)


pgsql-committers by date:

Previous
From: David Rowley
Date:
Subject: pgsql: Allow run-time pruning on nested Append/MergeAppend nodes
Next
From: Amit Kapila
Date:
Subject: pgsql: Use Enum for top level logical replication message types.