aboutsummaryrefslogtreecommitdiff
path: root/doc/src
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2013-04-04 22:37:25 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2013-04-04 22:37:25 -0400
commit52f436b807b0d02203ea6be19bafa56e4e1381e8 (patch)
treec5b9c3f32d97710e6498f9bf90e769e68403f6f9 /doc/src
parente3f719c3671c293bf9e1a7293c7bd5eb6d9a2611 (diff)
downloadpostgresql-52f436b807b0d02203ea6be19bafa56e4e1381e8.tar.gz
postgresql-52f436b807b0d02203ea6be19bafa56e4e1381e8.zip
Improve documentation about the relationship of extensions and schemas.
There's been some confusion expressed about this point, so clarify. Extended version of a patch by David Wheeler.
Diffstat (limited to 'doc/src')
-rw-r--r--doc/src/sgml/extend.sgml6
-rw-r--r--doc/src/sgml/ref/create_extension.sgml6
2 files changed, 12 insertions, 0 deletions
diff --git a/doc/src/sgml/extend.sgml b/doc/src/sgml/extend.sgml
index 672d0df13cf..bc1cd5908f2 100644
--- a/doc/src/sgml/extend.sgml
+++ b/doc/src/sgml/extend.sgml
@@ -359,6 +359,12 @@
extension.) Also notice that while a table can be a member of an
extension, its subsidiary objects such as indexes are not directly
considered members of the extension.
+ Another important point is that schemas can belong to extensions, but not
+ vice versa: an extension as such has an unqualified name and does not
+ exist <quote>within</> any schema. The extension's member objects,
+ however, will belong to schemas whenever appropriate for their object
+ types. It may or may not be appropriate for an extension to own the
+ schema(s) its member objects are within.
</para>
<sect2>
diff --git a/doc/src/sgml/ref/create_extension.sgml b/doc/src/sgml/ref/create_extension.sgml
index 4f3b9a5698a..9c9bf6ff7d7 100644
--- a/doc/src/sgml/ref/create_extension.sgml
+++ b/doc/src/sgml/ref/create_extension.sgml
@@ -94,6 +94,12 @@ CREATE EXTENSION [ IF NOT EXISTS ] <replaceable class="parameter">extension_name
If not specified, and the extension's control file does not specify a
schema either, the current default object creation schema is used.
</para>
+ <para>
+ Remember that the extension itself is not considered to be within any
+ schema: extensions have unqualified names that must be unique
+ database-wide. But objects belonging to the extension can be within
+ schemas.
+ </para>
</listitem>
</varlistentry>