postgres.git / summary / log / commit / refs
commit 9d0f7996e58c2a92efe06c901c6dfe1f6ced0a1d
Author: Michael Paquier <michael@paquier.xyz>
Date: Thu Dec 18 22:55:58 2025 +0000
Use table/index_close() more consistently
All the code paths updated here have been using relation_close() to
close a relation that has already been opened with table_open() or
index_open(), where a relkind check is enforced.
table_close() and index_open() do the same thing as relation_close(), so
there was no harm, but being inconsistent could lead to issues if the
internals of these close() functions begin to introduce some logic
specific to each relkind in the future.
Author: Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
Discussion: https://postgr.es/m/aUKamYGiDKO6byp5@ip-10-97-1-34.eu-west-3.compute.internal
src/backend/access/brin/brin.c | 8 ++++----
src/backend/parser/parse_utilcmd.c | 2 +-
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/backend/access/brin/brin.c b/src/backend/access/brin/brin.c
index 26cb75058d1..45d306037a4 100644
--- a/src/backend/access/brin/brin.c
+++ b/src/backend/access/brin/brin.c
@@ -1478,8 +1478,8 @@ brin_summarize_range(PG_FUNCTION_ARGS)
/* Restore userid and security context */
SetUserIdAndSecContext(save_userid, save_sec_context);
- relation_close(indexRel, ShareUpdateExclusiveLock);
- relation_close(heapRel, ShareUpdateExclusiveLock);
+ index_close(indexRel, ShareUpdateExclusiveLock);
+ table_close(heapRel, ShareUpdateExclusiveLock);
PG_RETURN_INT32((int32) numSummarized);
}
@@ -1568,8 +1568,8 @@ brin_desummarize_range(PG_FUNCTION_ARGS)
errmsg("index \"%s\" is not valid",
RelationGetRelationName(indexRel))));
- relation_close(indexRel, ShareUpdateExclusiveLock);
- relation_close(heapRel, ShareUpdateExclusiveLock);
+ index_close(indexRel, ShareUpdateExclusiveLock);
+ table_close(heapRel, ShareUpdateExclusiveLock);
PG_RETURN_VOID();
}
diff --git a/src/backend/parser/parse_utilcmd.c b/src/backend/parser/parse_utilcmd.c
index 375b40b29af..2b7b084f216 100644
--- a/src/backend/parser/parse_utilcmd.c
+++ b/src/backend/parser/parse_utilcmd.c
@@ -2572,7 +2572,7 @@ transformIndexConstraint(Constraint *constraint, CreateStmtContext *cxt)
}
/* Close the index relation but keep the lock */
- relation_close(index_rel, NoLock);
+ index_close(index_rel, NoLock);
index->indexOid = index_oid;
}
[parent: d49936f3028b]