Add prokind column, replacing proisagg and proiswindow
The new column distinguishes normal functions, procedures, aggregates,
and window functions. This replaces the existing columns proisagg and
proiswindow, and replaces the convention that procedures are indicated
by prorettype == 0. Also change prorettype to be VOIDOID for procedures.
Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us>
Reviewed-by: Michael Paquier <michael@paquier.xyz>
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/fd1a421fe66173fb9b85d3fe150afde8e812cbe4
Modified Files
--------------
doc/src/sgml/catalogs.sgml | 31 +-
src/backend/catalog/aclchk.c | 18 +-
src/backend/catalog/information_schema.sql | 12 +-
src/backend/catalog/objectaddress.c | 6 +-
src/backend/catalog/pg_aggregate.c | 3 +-
src/backend/catalog/pg_proc.c | 52 +-
src/backend/catalog/system_views.sql | 8 +-
src/backend/commands/dropcmds.c | 2 +-
src/backend/commands/functioncmds.c | 36 +-
src/backend/commands/proclang.c | 9 +-
src/backend/commands/typecmds.c | 3 +-
src/backend/executor/functions.c | 39 +-
src/backend/optimizer/util/clauses.c | 4 +-
src/backend/parser/parse_coerce.c | 3 +-
src/backend/parser/parse_func.c | 35 +-
src/backend/utils/adt/ruleutils.c | 10 +-
src/backend/utils/cache/lsyscache.c | 12 +-
src/bin/pg_dump/pg_dump.c | 78 +-
src/bin/pg_dump/t/002_pg_dump.pl | 6 +-
src/bin/psql/describe.c | 62 +-
src/bin/psql/tab-complete.c | 6 +-
src/include/catalog/catversion.h | 2 +-
src/include/catalog/pg_class.h | 2 +-
src/include/catalog/pg_proc.h | 5780 ++++++++++++-----------
src/include/catalog/pg_proc_fn.h | 3 +-
src/include/utils/lsyscache.h | 2 +-
src/pl/plperl/plperl.c | 3 +-
src/pl/plpgsql/src/pl_comp.c | 89 +-
src/pl/plpgsql/src/pl_exec.c | 12 +-
src/pl/plpgsql/src/pl_gram.y | 4 +-
src/pl/plpgsql/src/plpgsql.h | 1 +
src/pl/plpython/plpy_procedure.c | 4 +-
src/pl/tcl/pltcl.c | 4 +-
src/test/regress/expected/alter_generic.out | 22 +-
src/test/regress/expected/create_function_3.out | 9 +
src/test/regress/expected/opr_sanity.out | 39 +-
src/test/regress/expected/rules.out | 8 +-
src/test/regress/sql/alter_generic.sql | 2 +-
src/test/regress/sql/create_function_3.sql | 8 +
src/test/regress/sql/opr_sanity.sql | 39 +-
40 files changed, 3270 insertions(+), 3198 deletions(-)