pgsql: Core support for "extensions", which are packages of SQL objects - Mailing list pgsql-committers
From | Tom Lane |
---|---|
Subject | pgsql: Core support for "extensions", which are packages of SQL objects |
Date | |
Msg-id | E1Pmv1Z-00008Z-6Y@gemulon.postgresql.org Whole thread Raw |
List | 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 by date: