postgres.git / summary / log / commit / refs

commit    cc1ea710dc88186aab4b3c129883d710781fcfb6
Author:   Amit Kapila <akapila@postgresql.org>
Date:     Wed Aug 12 05:58:30 2026 +0000

    Remove unnecessary list_free() calls in OpenTableList().
    
    OpenTableList() is invoked at most once per DDL statement, from
    CreatePublication() and AlterPublicationTables(), and everything it
    builds (relids, relids_with_rf, and relids_with_collist) is allocated
    in the command's own memory context. That context is reclaimed as
    soon as the command finishes, so explicitly freeing relids and
    relids_with_rf here served no purpose.
    
    Reported-by: Peter Smith <smithpb2250@gmail.com>
    Suggested-by: Tom Lane <tgl@sss.pgh.pa.us>
    Author: Peter Smith <smithpb2250@gmail.com>
    Reviewed-by: shveta malik <shveta.malik@gmail.com>
    Reviewed-by: shihao zhong <zhong950419@gmail.com>
    Reviewed-by: surya poondla <suryapoondla4@gmail.com>
    Discussion: https://postgr.es/m/CAHut+Pt3bgyt==d6GCj=p9qu4sVSH_KQWLN7cMaH0RdJCO-K_Q@mail.gmail.com


src/backend/commands/publicationcmds.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/backend/commands/publicationcmds.c b/src/backend/commands/publicationcmds.c index 440adb356ad..96838730fe1 100644 --- a/src/backend/commands/publicationcmds.c +++ b/src/backend/commands/publicationcmds.c @@ -1977,9 +1977,6 @@ OpenTableList(List *tables) } } - list_free(relids); - list_free(relids_with_rf); - return rels; } [parent: 33c77cfad3e4]