mirror of
https://github.com/postgres/postgres.git
synced 2026-02-19 02:29:10 -05:00
Fix one-off issue with cache ID in objectaddress.c
get_catalog_object_by_oid_extended() has been doing a syscache lookup when given a cache ID strictly higher than 0, which is wrong because the first valid value of SysCacheIdentifier is 0. This issue had no consequences, as the first value assigned in the enum SysCacheIdentifier is AGGFNOID, which is not used in the object type properties listed in objectaddress.c. Even if an ID of 0 was hypotherically given, the code would still work with a less efficient heap-or-index scan. Discussion: https://postgr.es/m/aZTr_R6JGmqokUBb@paquier.xyz
This commit is contained in:
parent
b7271aa1d7
commit
f7df12a66c
1 changed files with 1 additions and 1 deletions
|
|
@ -2808,7 +2808,7 @@ get_catalog_object_by_oid_extended(Relation catalog,
|
|||
Oid classId = RelationGetRelid(catalog);
|
||||
int oidCacheId = get_object_catcache_oid(classId);
|
||||
|
||||
if (oidCacheId > 0)
|
||||
if (oidCacheId >= 0)
|
||||
{
|
||||
if (locktup)
|
||||
tuple = SearchSysCacheLockedCopy1(oidCacheId,
|
||||
|
|
|
|||
Loading…
Reference in a new issue