mirror of
https://github.com/postgres/postgres.git
synced 2025-11-19 13:42:17 +03:00
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
This commit is contained in:
@@ -5334,13 +5334,13 @@ get_rolespec_tuple(const RoleSpec *role)
|
||||
|
||||
case ROLESPEC_CURRENT_ROLE:
|
||||
case ROLESPEC_CURRENT_USER:
|
||||
tuple = SearchSysCache1(AUTHOID, GetUserId());
|
||||
tuple = SearchSysCache1(AUTHOID, ObjectIdGetDatum(GetUserId()));
|
||||
if (!HeapTupleIsValid(tuple))
|
||||
elog(ERROR, "cache lookup failed for role %u", GetUserId());
|
||||
break;
|
||||
|
||||
case ROLESPEC_SESSION_USER:
|
||||
tuple = SearchSysCache1(AUTHOID, GetSessionUserId());
|
||||
tuple = SearchSysCache1(AUTHOID, ObjectIdGetDatum(GetSessionUserId()));
|
||||
if (!HeapTupleIsValid(tuple))
|
||||
elog(ERROR, "cache lookup failed for role %u", GetSessionUserId());
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user