pgsql: Switch some system functions to use get_call_result_type() - Mailing list pgsql-committers

From Michael Paquier
Subject pgsql: Switch some system functions to use get_call_result_type()
Date
Msg-id E1p7nfE-004dLv-D3@gemulon.postgresql.org
Whole thread Raw
List 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(-)


pgsql-committers by date:

Previous
From: Andrew Dunstan
Date:
Subject: pgsql: Use existing SSL certs in LDAP tests instead of generating them
Next
From: Michael Paquier
Date:
Subject: pgsql: Make more consistent some translated strings related to compress