aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorThomas Munro <tmunro@postgresql.org>2023-08-17 15:45:13 +1200
committerThomas Munro <tmunro@postgresql.org>2023-08-17 15:54:31 +1200
commitd23e60e6673ab946b769d727c62fc65e146f17f3 (patch)
treead00786ad02802dae486fb2bc644ac584289d6d6 /src
parent1bc19dfcfea71e7ed03eff9d72072579bd678b4c (diff)
downloadpostgresql-d23e60e6673ab946b769d727c62fc65e146f17f3.tar.gz
postgresql-d23e60e6673ab946b769d727c62fc65e146f17f3.zip
Invalidate smgr_targblock in smgrrelease().
In rare circumstances involving relfilenode reuse, it might have been possible for smgr_targblock to finish up pointing past the end. Oversight in b74e94dc. Back-patch to 15. Reviewed-by: Heikki Linnakangas <hlinnaka@iki.fi> Discussion: https://postgr.es/m/CA%2BhUKGJ8NTvqLHz6dqbQnt2c8XCki4r2QvXjBQcXpVwxTY_pvA%40mail.gmail.com
Diffstat (limited to 'src')
-rw-r--r--src/backend/storage/smgr/smgr.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/backend/storage/smgr/smgr.c b/src/backend/storage/smgr/smgr.c
index a477f70f0e3..631733bb660 100644
--- a/src/backend/storage/smgr/smgr.c
+++ b/src/backend/storage/smgr/smgr.c
@@ -292,6 +292,7 @@ smgrrelease(SMgrRelation reln)
smgrsw[reln->smgr_which].smgr_close(reln, forknum);
reln->smgr_cached_nblocks[forknum] = InvalidBlockNumber;
}
+ reln->smgr_targblock = InvalidBlockNumber;
}
/*