]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Move fake LSN infrastructure out of GiST.
authorPeter Geoghegan <pg@bowt.ie>
Fri, 13 Mar 2026 23:38:17 +0000 (19:38 -0400)
committerPeter Geoghegan <pg@bowt.ie>
Fri, 13 Mar 2026 23:38:17 +0000 (19:38 -0400)
commitd774072f0040f9acf148cc9740b79857fbde7042
tree985af6a6c9f82d56bc6d088ff9fadd35a9240131
parent9b860373da5e2d05010e15ca697c8a11c5c0a395
Move fake LSN infrastructure out of GiST.

Move utility functions used by GiST to generate fake LSNs into xlog.c
and xloginsert.c, so that other index AMs can also generate fake LSNs.

Preparation for an upcoming commit that will add support for fake LSNs
to nbtree, allowing its dropPin optimization to be used during scans of
unlogged relations.  That commit is itself preparation for another
upcoming commit that will add a new amgetbatch/btgetbatch interface to
enable I/O prefetching.

Bump XLOG_PAGE_MAGIC due to XLOG_GIST_ASSIGN_LSN becoming
XLOG_ASSIGN_LSN.

Author: Peter Geoghegan <pg@bowt.ie>
Reviewed-By: Andres Freund <andres@anarazel.de>
Reviewed-By: Tomas Vondra <tomas@vondra.me>
Discussion: https://postgr.es/m/CAH2-WzkehuhxyuA8quc7rRN3EtNXpiKsjPfO8mhb+0Dr2K0Dtg@mail.gmail.com
15 files changed:
src/backend/access/gist/gist.c
src/backend/access/gist/gistutil.c
src/backend/access/gist/gistvacuum.c
src/backend/access/gist/gistxlog.c
src/backend/access/rmgrdesc/gistdesc.c
src/backend/access/rmgrdesc/xlogdesc.c
src/backend/access/transam/xlog.c
src/backend/access/transam/xloginsert.c
src/backend/storage/buffer/bufmgr.c
src/include/access/gist_private.h
src/include/access/gistxlog.h
src/include/access/xlog.h
src/include/access/xlog_internal.h
src/include/access/xloginsert.h
src/include/catalog/pg_control.h