postgres.git / summary / log / commit / refs

commit    998d100cdb7220a81b8775b67fbc1d5bbb918052
Author:   Heikki Linnakangas <heikki.linnakangas@iki.fi>
Date:     Wed Dec 10 09:43:16 2025 +0000
First released in: 17.8, 18.2

    Fix some near-bugs related to ResourceOwner function arguments
    
    These functions took a ResourceOwner argument, but only checked if it
    was NULL, and then used CurrentResourceOwner for the actual work.
    Surely the intention was to use the passed-in resource owner. All
    current callers passed CurrentResourceOwner or NULL, so this has no
    consequences at the moment, but it's an accident waiting to happen for
    future caller and extensions.
    
    Author: Matthias van de Meent <boekewurm+postgres@gmail.com>
    Discussion: https://www.postgresql.org/message-id/CAEze2Whnfv8VuRZaohE-Af+GxBA1SNfD_rXfm84Jv-958UCcJA@mail.gmail.com
    Backpatch-through: 17


src/backend/utils/cache/catcache.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/utils/cache/catcache.c b/src/backend/utils/cache/catcache.c index 59d625b244c..59d3825917b 100644 --- a/src/backend/utils/cache/catcache.c +++ b/src/backend/utils/cache/catcache.c @@ -1638,7 +1638,7 @@ ReleaseCatCacheWithOwner(HeapTuple tuple, ResourceOwner resowner) ct->refcount--; if (resowner) - ResourceOwnerForgetCatCacheRef(CurrentResourceOwner, &ct->tuple); + ResourceOwnerForgetCatCacheRef(resowner, &ct->tuple); if ( #ifndef CATCACHE_FORCE_RELEASE @@ -2083,7 +2083,7 @@ ReleaseCatCacheListWithOwner(CatCList *list, ResourceOwner resowner) Assert(list->refcount > 0); list->refcount--; if (resowner) - ResourceOwnerForgetCatCacheListRef(CurrentResourceOwner, list); + ResourceOwnerForgetCatCacheListRef(resowner, list); if ( #ifndef CATCACHE_FORCE_RELEASE [parent: d0518e965e64]