]> granicus.if.org Git - postgresql/commit
Add CASCADE support for CREATE EXTENSION.
authorAndres Freund <andres@anarazel.de>
Sat, 3 Oct 2015 16:19:37 +0000 (18:19 +0200)
committerAndres Freund <andres@anarazel.de>
Sat, 3 Oct 2015 16:23:40 +0000 (18:23 +0200)
commitb67aaf21e8ef8273d5179a8832a109153d7adfe1
tree4e3d4f851d5ac04aad1bce38a0e1a7d5e35b74bb
parentbf686796a055a8bd4abc9765763eb675a0428473
Add CASCADE support for CREATE EXTENSION.

Without CASCADE, if an extension has an unfullfilled dependency on
another extension, CREATE EXTENSION ERRORs out with "required extension
... is not installed". That is annoying, especially when that dependency
is an implementation detail of the extension, rather than something the
extension's user can make sense of.

In addition to CASCADE this also includes a small set of regression
tests around CREATE EXTENSION.

Author: Petr Jelinek, editorialized by Michael Paquier, Andres Freund
Reviewed-By: Michael Paquier, Andres Freund, Jeff Janes
Discussion: 557E0520.3040800@2ndquadrant.com
32 files changed:
contrib/hstore_plperl/expected/hstore_plperl.out
contrib/hstore_plperl/expected/hstore_plperlu.out
contrib/hstore_plperl/sql/hstore_plperl.sql
contrib/hstore_plperl/sql/hstore_plperlu.sql
contrib/hstore_plpython/expected/hstore_plpython.out
contrib/hstore_plpython/sql/hstore_plpython.sql
contrib/ltree_plpython/expected/ltree_plpython.out
contrib/ltree_plpython/sql/ltree_plpython.sql
doc/src/sgml/ref/create_extension.sgml
src/backend/commands/extension.c
src/backend/parser/gram.y
src/bin/psql/tab-complete.c
src/test/modules/Makefile
src/test/modules/test_extensions/.gitignore [new file with mode: 0644]
src/test/modules/test_extensions/Makefile [new file with mode: 0644]
src/test/modules/test_extensions/expected/test_extensions.out [new file with mode: 0644]
src/test/modules/test_extensions/sql/test_extensions.sql [new file with mode: 0644]
src/test/modules/test_extensions/test_ext1--1.0.sql [new file with mode: 0644]
src/test/modules/test_extensions/test_ext1.control [new file with mode: 0644]
src/test/modules/test_extensions/test_ext2--1.0.sql [new file with mode: 0644]
src/test/modules/test_extensions/test_ext2.control [new file with mode: 0644]
src/test/modules/test_extensions/test_ext3--1.0.sql [new file with mode: 0644]
src/test/modules/test_extensions/test_ext3.control [new file with mode: 0644]
src/test/modules/test_extensions/test_ext4--1.0.sql [new file with mode: 0644]
src/test/modules/test_extensions/test_ext4.control [new file with mode: 0644]
src/test/modules/test_extensions/test_ext5--1.0.sql [new file with mode: 0644]
src/test/modules/test_extensions/test_ext5.control [new file with mode: 0644]
src/test/modules/test_extensions/test_ext_cyclic1--1.0.sql [new file with mode: 0644]
src/test/modules/test_extensions/test_ext_cyclic1.control [new file with mode: 0644]
src/test/modules/test_extensions/test_ext_cyclic2--1.0.sql [new file with mode: 0644]
src/test/modules/test_extensions/test_ext_cyclic2.control [new file with mode: 0644]
src/tools/msvc/Mkvcbuild.pm