aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/cache
diff options
context:
space:
mode:
authorMichael Paquier <michael@paquier.xyz>2023-07-20 15:18:25 +0900
committerMichael Paquier <michael@paquier.xyz>2023-07-20 15:18:25 +0900
commit2a990abd79acea4717cc8f982a28f35b6b347ddb (patch)
tree2a5b181b6d75fe5cd20367a327cd80f7e0cca868 /src/backend/utils/cache
parent47556a0013fa64d44add2760577d49cf2eca4cd0 (diff)
downloadpostgresql-2a990abd79acea4717cc8f982a28f35b6b347ddb.tar.gz
postgresql-2a990abd79acea4717cc8f982a28f35b6b347ddb.zip
Add missing ObjectIdGetDatum() in syscache lookup calls for Oids
Based on how postgres.h foes the Oid <-> Datum conversion, there is no existing bugs but let's be consistent. 17 spots have been noticed as incorrectly passing down Oids rather than Datums. Aleksander got one, Zhang two and I the rest. Author: Michael Paquier, Aleksander Alekseev, Zhang Mingli Discussion: https://postgr.es/m/ZLUhqsqQN1MOaxdw@paquier.xyz
Diffstat (limited to 'src/backend/utils/cache')
-rw-r--r--src/backend/utils/cache/lsyscache.c6
-rw-r--r--src/backend/utils/cache/partcache.c3
2 files changed, 6 insertions, 3 deletions
diff --git a/src/backend/utils/cache/lsyscache.c b/src/backend/utils/cache/lsyscache.c
index 2c01a86c292..fc6d267e44c 100644
--- a/src/backend/utils/cache/lsyscache.c
+++ b/src/backend/utils/cache/lsyscache.c
@@ -2106,7 +2106,8 @@ get_transform_fromsql(Oid typid, Oid langid, List *trftypes)
if (!list_member_oid(trftypes, typid))
return InvalidOid;
- tup = SearchSysCache2(TRFTYPELANG, typid, langid);
+ tup = SearchSysCache2(TRFTYPELANG, ObjectIdGetDatum(typid),
+ ObjectIdGetDatum(langid));
if (HeapTupleIsValid(tup))
{
Oid funcid;
@@ -2127,7 +2128,8 @@ get_transform_tosql(Oid typid, Oid langid, List *trftypes)
if (!list_member_oid(trftypes, typid))
return InvalidOid;
- tup = SearchSysCache2(TRFTYPELANG, typid, langid);
+ tup = SearchSysCache2(TRFTYPELANG, ObjectIdGetDatum(typid),
+ ObjectIdGetDatum(langid));
if (HeapTupleIsValid(tup))
{
Oid funcid;
diff --git a/src/backend/utils/cache/partcache.c b/src/backend/utils/cache/partcache.c
index 5f3516ad0c2..c6c0d5a00f6 100644
--- a/src/backend/utils/cache/partcache.c
+++ b/src/backend/utils/cache/partcache.c
@@ -365,7 +365,8 @@ generate_partition_qual(Relation rel)
parent = relation_open(parentrelid, AccessShareLock);
/* Get pg_class.relpartbound */
- tuple = SearchSysCache1(RELOID, RelationGetRelid(rel));
+ tuple = SearchSysCache1(RELOID,
+ ObjectIdGetDatum(RelationGetRelid(rel)));
if (!HeapTupleIsValid(tuple))
elog(ERROR, "cache lookup failed for relation %u",
RelationGetRelid(rel));