postgres.git / summary / log / commit / refs

commit    d5ea206728de7cb301d2f572055a76d4ea43bc8d
Author:   Michael Paquier <michael@paquier.xyz>
Date:     Fri Mar 06 05:49:00 2026 +0000

    Fix inconsistency with HeapTuple freeing in extended_stats_funcs.c
    
    heap_freetuple() is a thin wrapper doing a pfree(), and the function
    import_pg_statistic(), introduced by ba97bf9cb7b4, had the idea to call
    directly pfree() rather than the "dedicated" heap tuple routine.
    
    upsert_pg_statistic_ext_data already uses heap_freetuple().  This code
    is harmless as-is, but let's be consistent across the board.
    
    Reported-by: Yonghao Lee <yonghao_lee@qq.com>
    Discussion: https://postgr.es/m/tencent_CA1315EE8FB9C62F742C71E95FAD72214205@qq.com


src/backend/statistics/extended_stats_funcs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/statistics/extended_stats_funcs.c b/src/backend/statistics/extended_stats_funcs.c index 0ec77a6090f..9279904b465 100644 --- a/src/backend/statistics/extended_stats_funcs.c +++ b/src/backend/statistics/extended_stats_funcs.c @@ -1509,7 +1509,7 @@ import_pg_statistic(Relation pgsd, JsonbContainer *cont, pgstup = heap_form_tuple(RelationGetDescr(pgsd), values, nulls); pgstdat = heap_copy_tuple_as_datum(pgstup, RelationGetDescr(pgsd)); - pfree(pgstup); + heap_freetuple(pgstup); *pg_statistic_ok = true; [parent: 2d4ead6f4bd0]