Обсуждение: pgsql: Fix up text concatenation so that it accepts all the reasonable

Поиск
Список
Период
Сортировка

pgsql: Fix up text concatenation so that it accepts all the reasonable

От
tgl@postgresql.org (Tom Lane)
Дата:
Log Message:
-----------
Fix up text concatenation so that it accepts all the reasonable cases that
were accepted by prior Postgres releases.  This takes care of the loose end
left by the preceding patch to downgrade implicit casts-to-text.  To avoid
breaking desirable behavior for array concatenation, introduce a new
polymorphic pseudo-type "anynonarray" --- the added concatenation operators
are actually text || anynonarray and anynonarray || text.

Modified Files:
--------------
    pgsql/doc/src/sgml:
        datatype.sgml (r1.203 -> r1.204)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/datatype.sgml.diff?r1=1.203&r2=1.204)
        extend.sgml (r1.34 -> r1.35)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/extend.sgml.diff?r1=1.34&r2=1.35)
        func.sgml (r1.381 -> r1.382)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/func.sgml.diff?r1=1.381&r2=1.382)
        plpgsql.sgml (r1.109 -> r1.110)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/plpgsql.sgml.diff?r1=1.109&r2=1.110)
        xfunc.sgml (r1.127 -> r1.128)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/xfunc.sgml.diff?r1=1.127&r2=1.128)
    pgsql/src/backend/catalog:
        pg_proc.c (r1.144 -> r1.145)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_proc.c.diff?r1=1.144&r2=1.145)
    pgsql/src/backend/executor:
        functions.c (r1.116 -> r1.117)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/functions.c.diff?r1=1.116&r2=1.117)
    pgsql/src/backend/parser:
        parse_agg.c (r1.77 -> r1.78)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_agg.c.diff?r1=1.77&r2=1.78)
        parse_coerce.c (r2.154 -> r2.155)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_coerce.c.diff?r1=2.154&r2=2.155)
        parse_func.c (r1.196 -> r1.197)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_func.c.diff?r1=1.196&r2=1.197)
    pgsql/src/backend/utils/adt:
        pseudotypes.c (r1.19 -> r1.20)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/pseudotypes.c.diff?r1=1.19&r2=1.20)
        xml.c (r1.43 -> r1.44)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/xml.c.diff?r1=1.43&r2=1.44)
    pgsql/src/backend/utils/fmgr:
        funcapi.c (r1.34 -> r1.35)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/fmgr/funcapi.c.diff?r1=1.34&r2=1.35)
    pgsql/src/include/catalog:
        catversion.h (r1.410 -> r1.411)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catversion.h.diff?r1=1.410&r2=1.411)
        pg_operator.h (r1.152 -> r1.153)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_operator.h.diff?r1=1.152&r2=1.153)
        pg_proc.h (r1.458 -> r1.459)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_proc.h.diff?r1=1.458&r2=1.459)
        pg_type.h (r1.184 -> r1.185)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_type.h.diff?r1=1.184&r2=1.185)
    pgsql/src/include/utils:
        builtins.h (r1.295 -> r1.296)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/builtins.h.diff?r1=1.295&r2=1.296)
        lsyscache.h (r1.118 -> r1.119)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/lsyscache.h.diff?r1=1.118&r2=1.119)
    pgsql/src/pl/plpgsql/src:
        pl_comp.c (r1.114 -> r1.115)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/pl/plpgsql/src/pl_comp.c.diff?r1=1.114&r2=1.115)
    pgsql/src/test/regress/expected:
        text.out (r1.3 -> r1.4)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/text.out.diff?r1=1.3&r2=1.4)
    pgsql/src/test/regress/sql:
        text.sql (r1.3 -> r1.4)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/text.sql.diff?r1=1.3&r2=1.4)