Thread: pgsql/ oc/src/sgml/release.sgml oc/src/sgml/re ...

pgsql/ oc/src/sgml/release.sgml oc/src/sgml/re ...

From
petere@postgresql.org (Peter Eisentraut - PostgreSQL)
Date:
CVSROOT:    /cvsroot
Module name:    pgsql
Changes by:    petere@postgresql.org    02/05/22 13:21:02

Modified files:
    doc/src/sgml   : release.sgml
    doc/src/sgml/ref: create_language.sgml
    src/backend/catalog: pg_aggregate.c pg_proc.c
    src/backend/commands: functioncmds.c proclang.c
    src/backend/nodes: copyfuncs.c equalfuncs.c
    src/backend/parser: gram.y keywords.c
    src/backend/utils/adt: sets.c
    src/bin/pg_dump: pg_dump.c
    src/include/catalog: catversion.h pg_language.h pg_proc.h
    src/include/nodes: parsenodes.h
    src/test/regress/input: create_function_1.source
    src/test/regress/output: create_function_1.source

Log message:
    Add optional "validator" function to languages that can validate the
    function body (and other properties) as a function in the language
    is created.  This generalizes ad hoc code that already existed for
    the built-in languages.

    The validation now happens after the pg_proc tuple of the new function
    is created, so it is possible to define recursive SQL functions.

    Add some regression test cases that cover bogus function definition
    attempts.