pgsql: Remove useless entries for aggregate functions from fmgrtab.c.

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 entries for aggregate functions from fmgrtab.c.
Date: 2020-11-04 16:26:04
Message-ID: E1kaLbo-0004Fd-02@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Remove useless entries for aggregate functions from fmgrtab.c.

Gen_fmgrtab.pl treated aggregate functions the same as other built-in
functions, which is wasteful because there is no real need to have
entries for them in the fmgr_builtins[] table. Suppressing those
entries saves about 3KB in the compiled table on my machine; which
is not a lot but it's not nothing either, considering that that
table is pretty "hot". The only outside code change needed is
that ExecInitWindowAgg() can't be allowed to call fmgr_info_cxt()
on a plain aggregate function. But that saves a few cycles anyway.

Having done that, the aggregate_dummy() function is unreferenced
and might as well be dropped. Using "aggregate_dummy" as the prosrc
value for an aggregate is now just a documentation convention not
something that matters. There was some discussion of using NULL
instead to save a few bytes in pg_proc, but we'd have to remove
prosrc's BKI_FORCE_NOT_NULL marking which doesn't seem a great idea.
Anyway, it's possible there's client-side code that expects to
see "aggregate_dummy" there, so I'm loath to change it without a
strong reason.

Discussion: https://postgr.es/m/533989.1604263665@sss.pgh.pa.us

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/f21636e5d5b8394ed076e18ddc5f4ba710c69c99

Modified Files
--------------
src/backend/catalog/pg_aggregate.c | 2 +-
src/backend/executor/nodeAgg.c | 18 ------------------
src/backend/executor/nodeWindowAgg.c | 10 +++++-----
src/backend/utils/Gen_fmgrtab.pl | 9 +++++++--
4 files changed, 13 insertions(+), 26 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2020-11-04 17:35:04 pgsql: Improve our ability to regurgitate SQL-syntax function calls.
Previous Message Heikki Linnakangas 2020-11-04 13:17:41 Re: pgsql: Get rid of the dedicated latch for signaling the startup process