pgsql: Recognize functional dependency on primary keys.

Поиск
Список
Период
Сортировка
От tgl@postgresql.org (Tom Lane)
Тема pgsql: Recognize functional dependency on primary keys.
Дата
Msg-id 20100807024409.35E3A7541D7@cvs.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Log Message:
-----------
Recognize functional dependency on primary keys.  This allows a table's
other columns to be referenced without listing them in GROUP BY, so long as
the primary key column(s) are listed in GROUP BY.

Eventually we should also allow functional dependency on a UNIQUE constraint
when the columns are marked NOT NULL, but that has to wait until NOT NULL
constraints are represented in pg_constraint, because we need to have
pg_constraint OIDs for all the conditions needed to ensure functional
dependency.

Peter Eisentraut, reviewed by Alex Hunsaker and Tom Lane

Modified Files:
--------------
    pgsql/doc/src/sgml:
        queries.sgml (r1.58 -> r1.59)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/queries.sgml?r1=1.58&r2=1.59)
    pgsql/doc/src/sgml/ref:
        select.sgml (r1.131 -> r1.132)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/ref/select.sgml?r1=1.131&r2=1.132)
    pgsql/src/backend/catalog:
        dependency.c (r1.96 -> r1.97)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/dependency.c?r1=1.96&r2=1.97)
        pg_constraint.c (r1.54 -> r1.55)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_constraint.c?r1=1.54&r2=1.55)
    pgsql/src/backend/nodes:
        copyfuncs.c (r1.466 -> r1.467)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/copyfuncs.c?r1=1.466&r2=1.467)
        equalfuncs.c (r1.386 -> r1.387)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/equalfuncs.c?r1=1.386&r2=1.387)
        outfuncs.c (r1.387 -> r1.388)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/outfuncs.c?r1=1.387&r2=1.388)
        readfuncs.c (r1.232 -> r1.233)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/readfuncs.c?r1=1.232&r2=1.233)
    pgsql/src/backend/parser:
        parse_agg.c (r1.93 -> r1.94)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_agg.c?r1=1.93&r2=1.94)
    pgsql/src/include/catalog:
        catversion.h (r1.590 -> r1.591)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catversion.h?r1=1.590&r2=1.591)
        pg_constraint.h (r1.40 -> r1.41)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_constraint.h?r1=1.40&r2=1.41)
    pgsql/src/include/nodes:
        parsenodes.h (r1.433 -> r1.434)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/parsenodes.h?r1=1.433&r2=1.434)
    pgsql/src/test/regress:
        parallel_schedule (r1.61 -> r1.62)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/parallel_schedule?r1=1.61&r2=1.62)
        serial_schedule (r1.56 -> r1.57)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/serial_schedule?r1=1.56&r2=1.57)

Added Files:
-----------
    pgsql/src/test/regress/expected:
        functional_deps.out (r1.1)

(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/functional_deps.out?rev=1.1&content-type=text/x-cvsweb-markup)
    pgsql/src/test/regress/sql:
        functional_deps.sql (r1.1)

(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/functional_deps.sql?rev=1.1&content-type=text/x-cvsweb-markup)

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

Предыдущее
От: petere@postgresql.org (Peter Eisentraut)
Дата:
Сообщение: pgsql: Fix indexterm spelling
Следующее
От: momjian@postgresql.org (Bruce Momjian)
Дата:
Сообщение: pgsql: Fix 9.0 release notes vacuum mention, not -> now Peter Fokkinga