diff options
author | Thomas Munro <tmunro@postgresql.org> | 2024-12-14 20:59:58 +1300 |
---|---|---|
committer | Thomas Munro <tmunro@postgresql.org> | 2024-12-14 21:52:10 +1300 |
commit | 48c142f78d90fcdcbc0557a4bcdc4f47ec32b333 (patch) | |
tree | 09254c488ff4ed0033042e841009a381ca79dbc9 | |
parent | c72ca3ddec15b73d9f9dc3e21b8db5d958b0dad7 (diff) | |
download | postgresql-48c142f78d90fcdcbc0557a4bcdc4f47ec32b333.tar.gz postgresql-48c142f78d90fcdcbc0557a4bcdc4f47ec32b333.zip |
Remove EXTENSION_DONT_CHECK_SIZE from md.c.
Commits 7bb3102c and 3eb77eba removed the only user of the
EXTENSION_DONT_CHECK_SIZE flag, which had previously been required to
checkpoint truncated relations. Since 7bb3102c, segments have been
opened directly for synchronization without calling _mdfd_getseg(), so
it doesn't need a mode that tolerates non-final short segments. Remove
the redundant flag and associated comments.
Reported-by: Andres Freund <andres@anarazel.de>
Discussion: https://postgr.es/m/nyj4k7yur5t27rtygvx2i2lrlp6rqfvvhoiiwx4fznynksf2et%404hj2sp42alpe
-rw-r--r-- | src/backend/storage/smgr/md.c | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/src/backend/storage/smgr/md.c b/src/backend/storage/smgr/md.c index cc8a80ee961..4a897a83593 100644 --- a/src/backend/storage/smgr/md.c +++ b/src/backend/storage/smgr/md.c @@ -106,14 +106,6 @@ static MemoryContext MdCxt; /* context for all MdfdVec objects */ #define EXTENSION_CREATE (1 << 2) /* create new segments if needed during recovery */ #define EXTENSION_CREATE_RECOVERY (1 << 3) -/* - * Allow opening segments which are preceded by segments smaller than - * RELSEG_SIZE, e.g. inactive segments (see above). Note that this breaks - * mdnblocks() and related functionality henceforth - which currently is ok, - * because this is only required in the checkpointer which never uses - * mdnblocks(). - */ -#define EXTENSION_DONT_CHECK_SIZE (1 << 4) /* don't try to open a segment, if not already open */ #define EXTENSION_DONT_OPEN (1 << 5) @@ -1683,14 +1675,12 @@ _mdfd_getseg(SMgrRelation reln, ForkNumber forknum, BlockNumber blkno, } flags = O_CREAT; } - else if (!(behavior & EXTENSION_DONT_CHECK_SIZE) && - nblocks < ((BlockNumber) RELSEG_SIZE)) + else if (nblocks < ((BlockNumber) RELSEG_SIZE)) { /* - * When not extending (or explicitly including truncated - * segments), only open the next segment if the current one is - * exactly RELSEG_SIZE. If not (this branch), either return NULL - * or fail. + * When not extending, only open the next segment if the current + * one is exactly RELSEG_SIZE. If not (this branch), either + * return NULL or fail. */ if (behavior & EXTENSION_RETURN_NULL) { |