pgsql: Switch some system functions to use get_call_result_type()

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Switch some system functions to use get_call_result_type()
Date: 2022-12-21 01:12:57
Message-ID: E1p7nfE-004dLv-D3@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Switch some system functions to use get_call_result_type()

This shaves some code by replacing the combinations of
CreateTemplateTupleDesc()/TupleDescInitEntry() hardcoding a mapping of
the attributes listed in pg_proc.dat by get_call_result_type() to build
the TupleDesc needed for the rows generated.

get_call_result_type() is more expensive than the former style, but this
removes some duplication with the lists of OUT parameters (pg_proc.dat
and the attributes hardcoded in these code paths). This is applied to
functions that are not considered as critical (aka that could be called
repeatedly for monitoring purposes).

Author: Bharath Rupireddy
Reviewed-by: Robert Haas, Álvaro Herrera, Tom Lane, Michael Paquier
Discussion: https://postgr.es/m/CALj2ACV23HW5HP5hFjd89FNS-z5X8r2jNXdMXcpN2BgTtKd87w@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/22e3b558052aa209cba2a8fec192d76b5faef19e

Modified Files
--------------
contrib/old_snapshot/time_mapping.c | 26 ++------
contrib/pg_visibility/pg_visibility.c | 6 +-
src/backend/access/transam/commit_ts.c | 26 ++------
src/backend/access/transam/multixact.c | 9 +--
src/backend/catalog/objectaddress.c | 42 ++-----------
src/backend/commands/sequence.c | 19 +-----
src/backend/tsearch/wparser.c | 35 +++++------
src/backend/utils/adt/datetime.c | 17 ++---
src/backend/utils/adt/misc.c | 31 ++-------
src/backend/utils/adt/partitionfuncs.c | 14 +----
src/backend/utils/adt/tsvector_op.c | 15 ++---
src/backend/utils/misc/pg_controldata.c | 108 +++-----------------------------
12 files changed, 62 insertions(+), 286 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Michael Paquier 2022-12-21 01:39:59 pgsql: Make more consistent some translated strings related to compress
Previous Message Peter Smith 2022-12-20 22:29:58 Re: pgsql: Doc: Explain about Column List feature.