Refactor some TOAST value ID code to use Oid8 instead of Oid This is a mechanical update to change most of the TOAST code paths that assume TOAST value IDs to be Oid variables to become Oid8 variables, easing an the introduction of an upcoming patch to allow larger TOAST values, at 8 bytes.
The areas touched by the change are related to table AM, amcheck and logical decoding's reorder buffer. A good chunk of the changes involve switching printf() markers from %u to OID8_FORMAT. For the sake of the release notes in terms of compatibility (perhaps worth mentioning, or not), note that this changes some callback definitions in the table AM section, upgrading some TOAST callbacks to use Oid8 instead of Oid when referring to a TOAST value. Author: Michael Paquier <[email protected]> Reviewed-by: Greg Burd <[email protected]> Reviewed-by: Bharath Rupireddy <[email protected]> Reviewed-by: Yugo Nagata <[email protected]> Discussion: https://postgr.es/m/[email protected] Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/072d4c4240572980b9c101ff5d2b85e656e79275 Modified Files -------------- contrib/amcheck/verify_heapam.c | 55 ++++++++++++++----------- src/backend/access/common/toast_internals.c | 8 ++-- src/backend/access/heap/heaptoast.c | 12 +++--- src/backend/replication/logical/reorderbuffer.c | 14 ++++--- src/include/access/heaptoast.h | 2 +- src/include/access/tableam.h | 4 +- 6 files changed, 52 insertions(+), 43 deletions(-)
