0001-Invalidate-smgr_targblock-on-release.patch
text/x-patch
Filename: 0001-Invalidate-smgr_targblock-on-release.patch
Type: text/x-patch
Part: 0
Message:
Extending SMgrRelation lifetimes
Patch
Format: format-patch
Series: patch 0001
Subject: Invalidate smgr_targblock on release.
| File | + | − |
|---|---|---|
| src/backend/storage/smgr/smgr.c | 1 | 0 |
From 844e56e9ea9a56e04813886a6f7ded19a3af7f90 Mon Sep 17 00:00:00 2001
From: Thomas Munro <thomas.munro@gmail.com>
Date: Mon, 14 Aug 2023 11:01:28 +1200
Subject: [PATCH 1/2] Invalidate smgr_targblock on release.
In rare circumstances involving relfilenode reuse, it may be possible
for smgr_targblock to finish up pointing past the end.
Oversight in b74e94dc. Back-patch to 15.
---
src/backend/storage/smgr/smgr.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/backend/storage/smgr/smgr.c b/src/backend/storage/smgr/smgr.c
index f76c4605db..65e7436306 100644
--- a/src/backend/storage/smgr/smgr.c
+++ b/src/backend/storage/smgr/smgr.c
@@ -295,6 +295,7 @@ smgrrelease(SMgrRelation reln)
{
smgrsw[reln->smgr_which].smgr_close(reln, forknum);
reln->smgr_cached_nblocks[forknum] = InvalidBlockNumber;
+ reln->smgr_targblock = InvalidBlockNumber;
}
}
--
2.39.2