pgsql: Remove useless pfree()s at the ends of various ValuePerCall SRFs

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Remove useless pfree()s at the ends of various ValuePerCall SRFs
Date: 2020-03-17 01:36:57
Message-ID: E1jE1A9-00033u-HT@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Remove useless pfree()s at the ends of various ValuePerCall SRFs.

We don't need to manually clean up allocations in a SRF's
multi_call_memory_ctx, because the SRF_RETURN_DONE infrastructure
takes care of that (and also ensures that it will happen even if the
function never gets a final call, which simple manual cleanup cannot
do).

Hence, the code removed by this patch is a waste of code and cycles.
Worse, it gives the impression that cleaning up manually is a thing,
which can lead to more serious errors such as those fixed in
commits 085b6b667 and b4570d33a. So we should get rid of it.

These are not quite actual bugs though, so I couldn't muster the
enthusiasm to back-patch. Fix in HEAD only.

Justin Pryzby

Discussion: https://postgr.es/m/20200308173103.GC1357@telsasoft.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/41b45576d532ab6ef4a968f78b5b06d700ebf61f

Modified Files
--------------
contrib/pageinspect/btreefuncs.c | 15 ++++-----------
contrib/pageinspect/ginfuncs.c | 4 ++--
contrib/pageinspect/hashfuncs.c | 7 ++-----
src/backend/access/transam/multixact.c | 4 ----
src/backend/tsearch/wparser.c | 9 ---------
src/backend/utils/adt/jsonfuncs.c | 14 --------------
src/backend/utils/adt/tsvector_op.c | 1 -
7 files changed, 8 insertions(+), 46 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Fujii Masao 2020-03-17 03:07:01 pgsql: Fix comment in xlog.c.
Previous Message Tom Lane 2020-03-17 01:06:13 pgsql: Avoid holding a directory FD open across assorted SRF calls.