pgsql: Fix a bunch of problems with domains by making them use special - Mailing list pgsql-committers

From tgl@postgresql.org (Tom Lane)
Subject pgsql: Fix a bunch of problems with domains by making them use special
Date
Msg-id 20060405221158.46F3711F655B@postgresql.org
Whole thread Raw
List pgsql-committers
Log Message:
-----------
Fix a bunch of problems with domains by making them use special input functions
that apply the necessary domain constraint checks immediately.  This fixes
cases where domain constraints went unchecked for statement parameters,
PL function local variables and results, etc.  We can also eliminate existing
special cases for domains in places that had gotten it right, eg COPY.

Also, allow domains over domains (base of a domain is another domain type).
This almost worked before, but was disallowed because the original patch
hadn't gotten it quite right.

Modified Files:
--------------
    pgsql/doc/src/sgml/ref:
        create_domain.sgml (r1.27 -> r1.28)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/ref/create_domain.sgml.diff?r1=1.27&r2=1.28)
        create_type.sgml (r1.62 -> r1.63)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/ref/create_type.sgml.diff?r1=1.62&r2=1.63)
    pgsql/src/backend/access/common:
        printtup.c (r1.95 -> r1.96)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/common/printtup.c.diff?r1=1.95&r2=1.96)
    pgsql/src/backend/commands:
        copy.c (r1.262 -> r1.263)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/copy.c.diff?r1=1.262&r2=1.263)
        typecmds.c (r1.89 -> r1.90)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/typecmds.c.diff?r1=1.89&r2=1.90)
    pgsql/src/backend/optimizer/prep:
        preptlist.c (r1.80 -> r1.81)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/prep/preptlist.c.diff?r1=1.80&r2=1.81)
    pgsql/src/backend/parser:
        parse_coerce.c (r2.136 -> r2.137)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_coerce.c.diff?r1=2.136&r2=2.137)
    pgsql/src/backend/rewrite:
        rewriteHandler.c (r1.161 -> r1.162)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/rewrite/rewriteHandler.c.diff?r1=1.161&r2=1.162)
        rewriteManip.c (r1.97 -> r1.98)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/rewrite/rewriteManip.c.diff?r1=1.97&r2=1.98)
    pgsql/src/backend/utils/adt:
        Makefile (r1.59 -> r1.60)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/Makefile.diff?r1=1.59&r2=1.60)
    pgsql/src/backend/utils/cache:
        lsyscache.c (r1.133 -> r1.134)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/cache/lsyscache.c.diff?r1=1.133&r2=1.134)
    pgsql/src/include/catalog:
        catversion.h (r1.321 -> r1.322)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catversion.h.diff?r1=1.321&r2=1.322)
        pg_proc.h (r1.404 -> r1.405)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_proc.h.diff?r1=1.404&r2=1.405)
        pg_type.h (r1.170 -> r1.171)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_type.h.diff?r1=1.170&r2=1.171)
    pgsql/src/include/parser:
        parse_coerce.h (r1.61 -> r1.62)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/parser/parse_coerce.h.diff?r1=1.61&r2=1.62)
    pgsql/src/include/utils:
        builtins.h (r1.277 -> r1.278)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/builtins.h.diff?r1=1.277&r2=1.278)
        lsyscache.h (r1.103 -> r1.104)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/lsyscache.h.diff?r1=1.103&r2=1.104)
    pgsql/src/test/regress/expected:
        domain.out (r1.36 -> r1.37)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/domain.out.diff?r1=1.36&r2=1.37)
    pgsql/src/test/regress/sql:
        domain.sql (r1.20 -> r1.21)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/domain.sql.diff?r1=1.20&r2=1.21)

Added Files:
-----------
    pgsql/src/backend/utils/adt:
        domains.c (r1.1)

(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/domains.c?rev=1.1&content-type=text/x-cvsweb-markup)

pgsql-committers by date:

Previous
From: cmaj@pgfoundry.org (User Cmaj)
Date:
Subject: pgaccess - pgaccess: a few more OID removals
Next
From: momjian@postgresql.org (Bruce Momjian)
Date:
Subject: pgsql: Update AIX FAQ to show readline options more clearly.