pgsql: Core support for "extensions", which are packages of SQL objects

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Core support for "extensions", which are packages of SQL objects
Дата
Msg-id E1Pmv1Z-00008Z-6Y@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Core support for "extensions", which are packages of SQL objects.

This patch adds the server infrastructure to support extensions.
There is still one significant loose end, namely how to make it play nice
with pg_upgrade, so I am not yet committing the changes that would make
all the contrib modules depend on this feature.

In passing, fix a disturbingly large amount of breakage in
AlterObjectNamespace() and callers.

Dimitri Fontaine, reviewed by Anssi Kääriäinen,
Itagaki Takahiro, Tom Lane, and numerous others

Branch
------
master

Details
-------
http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=d9572c4e3b474031060189050e14ef384b94e001

Modified Files
--------------
doc/src/sgml/acronyms.sgml                 |    2 +-
doc/src/sgml/catalogs.sgml                 |  195 ++++
doc/src/sgml/extend.sgml                   |  715 ++++++++++++++-
doc/src/sgml/ref/allfiles.sgml             |    3 +
doc/src/sgml/ref/alter_extension.sgml      |   98 ++
doc/src/sgml/ref/comment.sgml              |    1 +
doc/src/sgml/ref/create_extension.sgml     |  118 +++
doc/src/sgml/ref/drop_extension.sgml       |  121 +++
doc/src/sgml/ref/psql-ref.sgml             |   14 +-
doc/src/sgml/reference.sgml                |    3 +
doc/src/sgml/release-9.0.sgml              |    5 +-
doc/src/sgml/xfunc.sgml                    |  331 ++------
src/backend/catalog/Makefile               |    2 +-
src/backend/catalog/dependency.c           |   45 +-
src/backend/catalog/heap.c                 |    5 +-
src/backend/catalog/objectaddress.c        |   14 +
src/backend/catalog/pg_conversion.c        |    3 +
src/backend/catalog/pg_depend.c            |   88 ++-
src/backend/catalog/pg_namespace.c         |   11 +-
src/backend/catalog/pg_operator.c          |    5 +-
src/backend/catalog/pg_proc.c              |    9 +-
src/backend/catalog/pg_type.c              |   10 +-
src/backend/catalog/system_views.sql       |    7 +
src/backend/commands/Makefile              |    3 +-
src/backend/commands/alter.c               |  196 ++++-
src/backend/commands/cluster.c             |    6 +-
src/backend/commands/comment.c             |    6 +
src/backend/commands/conversioncmds.c      |   31 +-
src/backend/commands/extension.c           | 1401 ++++++++++++++++++++++++++++
src/backend/commands/foreigncmds.c         |   27 +-
src/backend/commands/functioncmds.c        |   42 +-
src/backend/commands/opclasscmds.c         |   82 ++-
src/backend/commands/operatorcmds.c        |   28 +-
src/backend/commands/proclang.c            |    9 +-
src/backend/commands/tablecmds.c           |    1 +
src/backend/commands/tsearchcmds.c         |  128 +++-
src/backend/commands/typecmds.c            |   23 +-
src/backend/nodes/copyfuncs.c              |   14 +
src/backend/nodes/equalfuncs.c             |   12 +
src/backend/parser/gram.y                  |   56 +-
src/backend/rewrite/rewriteDefine.c        |    2 +-
src/backend/tcop/utility.c                 |   24 +
src/backend/utils/adt/genfile.c            |   63 +-
src/bin/pg_dump/common.c                   |    7 +
src/bin/pg_dump/pg_dump.c                  |  283 +++++-
src/bin/pg_dump/pg_dump.h                  |   10 +
src/bin/pg_dump/pg_dump_sort.c             |   65 +-
src/bin/psql/command.c                     |    6 +
src/bin/psql/describe.c                    |  164 ++++-
src/bin/psql/describe.h                    |    6 +
src/bin/psql/help.c                        |    1 +
src/bin/psql/tab-complete.c                |   36 +-
src/include/catalog/catversion.h           |    2 +-
src/include/catalog/dependency.h           |   16 +-
src/include/catalog/indexing.h             |    6 +
src/include/catalog/pg_extension.h         |   72 ++
src/include/catalog/pg_proc.h              |    6 +
src/include/commands/alter.h               |   10 +-
src/include/commands/conversioncmds.h      |    1 +
src/include/commands/defrem.h              |    8 +
src/include/commands/extension.h           |   40 +
src/include/commands/typecmds.h            |    3 +-
src/include/nodes/nodes.h                  |    1 +
src/include/nodes/parsenodes.h             |   13 +
src/include/parser/kwlist.h                |    1 +
src/include/utils/builtins.h               |    6 +
src/makefiles/pgxs.mk                      |   23 +-
src/test/regress/expected/rules.out        |    3 +-
src/test/regress/expected/sanity_check.out |    1 +
69 files changed, 4204 insertions(+), 545 deletions(-)


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql: Fix merge conflict.
Следующее
От: Bernd Helmle
Дата:
Сообщение: Re: pgsql: Extend ALTER TABLE to allow Foreign Keys to be added without ini