pgsql: Add exclusion constraints, which generalize the concept of

Поиск
Список
Период
Сортировка
От tgl@postgresql.org (Tom Lane)
Тема pgsql: Add exclusion constraints, which generalize the concept of
Дата
Msg-id 20091207052223.D838D753FB7@cvs.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Log Message:
-----------
Add exclusion constraints, which generalize the concept of uniqueness to
support any indexable commutative operator, not just equality.  Two rows
violate the exclusion constraint if "row1.col OP row2.col" is TRUE for
each of the columns in the constraint.

Jeff Davis, reviewed by Robert Haas

Modified Files:
--------------
    pgsql/doc/src/sgml:
        catalogs.sgml (r2.211 -> r2.212)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/catalogs.sgml?r1=2.211&r2=2.212)
        errcodes.sgml (r1.27 -> r1.28)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/errcodes.sgml?r1=1.27&r2=1.28)
    pgsql/doc/src/sgml/ref:
        create_table.sgml (r1.119 -> r1.120)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/ref/create_table.sgml?r1=1.119&r2=1.120)
    pgsql/src/backend/access/index:
        genam.c (r1.76 -> r1.77)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/index/genam.c?r1=1.76&r2=1.77)
    pgsql/src/backend/bootstrap:
        bootparse.y (r1.100 -> r1.101)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/bootstrap/bootparse.y?r1=1.100&r2=1.101)
        bootstrap.c (r1.253 -> r1.254)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/bootstrap/bootstrap.c?r1=1.253&r2=1.254)
    pgsql/src/backend/catalog:
        heap.c (r1.360 -> r1.361)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/heap.c?r1=1.360&r2=1.361)
        index.c (r1.324 -> r1.325)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/index.c?r1=1.324&r2=1.325)
        indexing.c (r1.118 -> r1.119)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/indexing.c?r1=1.118&r2=1.119)
        information_schema.sql (r1.59 -> r1.60)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/information_schema.sql?r1=1.59&r2=1.60)
        pg_constraint.c (r1.49 -> r1.50)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_constraint.c?r1=1.49&r2=1.50)
        toasting.c (r1.20 -> r1.21)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/toasting.c?r1=1.20&r2=1.21)
    pgsql/src/backend/commands:
        constraint.c (r1.1 -> r1.2)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/constraint.c?r1=1.1&r2=1.2)
        indexcmds.c (r1.187 -> r1.188)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/indexcmds.c?r1=1.187&r2=1.188)
        tablecmds.c (r1.306 -> r1.307)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/tablecmds.c?r1=1.306&r2=1.307)
        typecmds.c (r1.138 -> r1.139)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/typecmds.c?r1=1.138&r2=1.139)
        vacuum.c (r1.396 -> r1.397)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/vacuum.c?r1=1.396&r2=1.397)
    pgsql/src/backend/executor:
        execUtils.c (r1.166 -> r1.167)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/execUtils.c?r1=1.166&r2=1.167)
    pgsql/src/backend/nodes:
        copyfuncs.c (r1.452 -> r1.453)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/copyfuncs.c?r1=1.452&r2=1.453)
        equalfuncs.c (r1.374 -> r1.375)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/equalfuncs.c?r1=1.374&r2=1.375)
        outfuncs.c (r1.373 -> r1.374)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/outfuncs.c?r1=1.373&r2=1.374)
    pgsql/src/backend/parser:
        gram.y (r2.694 -> r2.695)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/gram.y?r1=2.694&r2=2.695)
        parse_utilcmd.c (r2.30 -> r2.31)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_utilcmd.c?r1=2.30&r2=2.31)
    pgsql/src/backend/tcop:
        utility.c (r1.320 -> r1.321)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/tcop/utility.c?r1=1.320&r2=1.321)
    pgsql/src/backend/utils/adt:
        ruleutils.c (r1.315 -> r1.316)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/ruleutils.c?r1=1.315&r2=1.316)
    pgsql/src/backend/utils/cache:
        relcache.c (r1.292 -> r1.293)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/cache/relcache.c?r1=1.292&r2=1.293)
    pgsql/src/bin/pg_dump:
        pg_dump.c (r1.553 -> r1.554)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/bin/pg_dump/pg_dump.c?r1=1.553&r2=1.554)
    pgsql/src/bin/psql:
        describe.c (r1.231 -> r1.232)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/bin/psql/describe.c?r1=1.231&r2=1.232)
    pgsql/src/include/catalog:
        catversion.h (r1.555 -> r1.556)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catversion.h?r1=1.555&r2=1.556)
        pg_attribute.h (r1.154 -> r1.155)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_attribute.h?r1=1.154&r2=1.155)
        pg_class.h (r1.116 -> r1.117)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_class.h?r1=1.116&r2=1.117)
        pg_constraint.h (r1.33 -> r1.34)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_constraint.h?r1=1.33&r2=1.34)
    pgsql/src/include/commands:
        defrem.h (r1.97 -> r1.98)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/commands/defrem.h?r1=1.97&r2=1.98)
    pgsql/src/include/executor:
        executor.h (r1.163 -> r1.164)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/executor/executor.h?r1=1.163&r2=1.164)
    pgsql/src/include/nodes:
        execnodes.h (r1.212 -> r1.213)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/execnodes.h?r1=1.212&r2=1.213)
        parsenodes.h (r1.416 -> r1.417)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/parsenodes.h?r1=1.416&r2=1.417)
    pgsql/src/include/parser:
        kwlist.h (r1.6 -> r1.7)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/parser/kwlist.h?r1=1.6&r2=1.7)
    pgsql/src/include/utils:
        errcodes.h (r1.29 -> r1.30)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/errcodes.h?r1=1.29&r2=1.30)
        rel.h (r1.116 -> r1.117)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/rel.h?r1=1.116&r2=1.117)
        relcache.h (r1.64 -> r1.65)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/relcache.h?r1=1.64&r2=1.65)
    pgsql/src/pl/plpgsql/src:
        plerrcodes.h (r1.18 -> r1.19)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/pl/plpgsql/src/plerrcodes.h?r1=1.18&r2=1.19)
    pgsql/src/test/regress/input:
        constraints.source (r1.13 -> r1.14)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/input/constraints.source?r1=1.13&r2=1.14)
    pgsql/src/test/regress/output:
        constraints.source (r1.45 -> r1.46)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/output/constraints.source?r1=1.45&r2=1.46)

В списке pgsql-committers по дате отправления:

Предыдущее
От: tgl@postgresql.org (Tom Lane)
Дата:
Сообщение: pgsql: Don't use a duplicate OID for aclexplode().
Следующее
От: mha@postgresql.org (Magnus Hagander)
Дата:
Сообщение: pgsql: Update CVS documentation to be more current and add documentation