Commit f1fb4b0e authored by Tom Lane's avatar Tom Lane

Fix obsolete references to old-style contrib installation methods.

parent 2ee69ff6
...@@ -17,8 +17,13 @@ ...@@ -17,8 +17,13 @@
below) while creating a trigger. below) while creating a trigger.
</para> </para>
<para>
Each of the groups of functions described below is provided as a
separately-installable extension.
</para>
<sect2> <sect2>
<title>refint.c &mdash; Functions for Implementing Referential Integrity</title> <title>refint &mdash; Functions for Implementing Referential Integrity</title>
<para> <para>
<function>check_primary_key()</> and <function>check_primary_key()</> and
...@@ -59,7 +64,7 @@ ...@@ -59,7 +64,7 @@
</sect2> </sect2>
<sect2> <sect2>
<title>timetravel.c &mdash; Functions for Implementing Time Travel</title> <title>timetravel &mdash; Functions for Implementing Time Travel</title>
<para> <para>
Long ago, <productname>PostgreSQL</> had a built-in time travel feature Long ago, <productname>PostgreSQL</> had a built-in time travel feature
...@@ -152,7 +157,7 @@ CREATE TABLE mytab ( ...@@ -152,7 +157,7 @@ CREATE TABLE mytab (
</sect2> </sect2>
<sect2> <sect2>
<title>autoinc.c &mdash; Functions for Autoincrementing Fields</title> <title>autoinc &mdash; Functions for Autoincrementing Fields</title>
<para> <para>
<function>autoinc()</> is a trigger that stores the next value of <function>autoinc()</> is a trigger that stores the next value of
...@@ -179,7 +184,7 @@ CREATE TABLE mytab ( ...@@ -179,7 +184,7 @@ CREATE TABLE mytab (
</sect2> </sect2>
<sect2> <sect2>
<title>insert_username.c &mdash; Functions for Tracking Who Changed a Table</title> <title>insert_username &mdash; Functions for Tracking Who Changed a Table</title>
<para> <para>
<function>insert_username()</> is a trigger that stores the current <function>insert_username()</> is a trigger that stores the current
...@@ -200,7 +205,7 @@ CREATE TABLE mytab ( ...@@ -200,7 +205,7 @@ CREATE TABLE mytab (
</sect2> </sect2>
<sect2> <sect2>
<title>moddatetime.c &mdash; Functions for Tracking Last Modification Time</title> <title>moddatetime &mdash; Functions for Tracking Last Modification Time</title>
<para> <para>
<function>moddatetime()</> is a trigger that stores the current <function>moddatetime()</> is a trigger that stores the current
......
...@@ -46,38 +46,45 @@ ...@@ -46,38 +46,45 @@
<para> <para>
Many modules supply new user-defined functions, operators, or types. Many modules supply new user-defined functions, operators, or types.
To make use of one of these modules, after you have installed the code To make use of one of these modules, after you have installed the code
you need to register the new objects in the database you need to register the new SQL objects in the database system.
system by running the SQL commands in the <literal>.sql</> file In <productname>PostgreSQL</> 9.1 and later, this is done by executing
supplied by the module. For example, a <xref linkend="sql-createextension"> command. In a fresh database,
you can simply do
<programlisting> <programlisting>
psql -d dbname -f <replaceable>SHAREDIR</>/contrib/<replaceable>module</>.sql CREATE EXTENSION <replaceable>module_name</>;
</programlisting> </programlisting>
Here, <replaceable>SHAREDIR</> means the installation's <quote>share</> This command must be run by a database superuser. This registers the
directory (<literal>pg_config --sharedir</> will tell you what this is). new SQL objects in the current database only, so you need to run this
In most cases the script must be run by a database superuser. command in each database that you want
</para>
<para>
You need to run the <literal>.sql</> file in each database that you want
the module's facilities to be available in. Alternatively, run it in the module's facilities to be available in. Alternatively, run it in
database <literal>template1</> so that the module will be copied into database <literal>template1</> so that the extension will be copied into
subsequently-created databases by default. subsequently-created databases by default.
</para> </para>
<para> <para>
You can modify the first command in the <literal>.sql</> file to determine Many modules allow you to install their objects in a schema of your
which schema within the database the module's objects will be created in. choice. To do that, add <literal>SCHEMA
By default, they will be placed in <literal>public</>. <replaceable>schema_name</></literal> to the <command>CREATE EXTENSION</>
command. By default, the objects will be placed in your current creation
target schema, typically <literal>public</>.
</para> </para>
<para> <para>
After a major-version upgrade of <productname>PostgreSQL</>, run the If your database was brought forward by dump and reload from a pre-9.1
installation script again, even though the module's objects might have version of <productname>PostgreSQL</>, and you had been using the pre-9.1
been brought forward from the old installation by dump and restore. version of the module in it, you should instead do
This ensures that any new functions will be available and any needed
corrections will be applied. <programlisting>
CREATE EXTENSION <replaceable>module_name</> FROM unpackaged;
</programlisting>
This will update the pre-9.1 objects of the module into a proper
<firstterm>extension</> object. Future updates to the module will be
managed by <xref linkend="sql-alterextension">.
For more information about extension updates, see
<xref linkend="extend-extensions">.
</para> </para>
&adminpack; &adminpack;
......
...@@ -47,8 +47,8 @@ ...@@ -47,8 +47,8 @@
<title>Usage</title> <title>Usage</title>
<para> <para>
Running the installation script creates a text search template Installing the <literal>dict_int</> extension creates a text search
<literal>intdict_template</> and a dictionary <literal>intdict</> template <literal>intdict_template</> and a dictionary <literal>intdict</>
based on it, with the default parameters. You can alter the based on it, with the default parameters. You can alter the
parameters, for example parameters, for example
......
...@@ -87,8 +87,8 @@ word syn1 syn2 syn3 ...@@ -87,8 +87,8 @@ word syn1 syn2 syn3
<title>Usage</title> <title>Usage</title>
<para> <para>
Running the installation script creates a text search template Installing the <literal>dict_xsyn</> extension creates a text search
<literal>xsyn_template</> and a dictionary <literal>xsyn</> template <literal>xsyn_template</> and a dictionary <literal>xsyn</>
based on it, with default parameters. You can alter the based on it, with default parameters. You can alter the
parameters, for example parameters, for example
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
<para> <para>
The <filename>earthdistance</> module provides two different approaches to The <filename>earthdistance</> module provides two different approaches to
calculating great circle distances on the surface of the Earth. The one calculating great circle distances on the surface of the Earth. The one
described first depends on the <filename>cube</> package (which described first depends on the <filename>cube</> module (which
<emphasis>must</> be installed before <filename>earthdistance</> can be <emphasis>must</> be installed before <filename>earthdistance</> can be
installed). The second one is based on the built-in <type>point</> data type, installed). The second one is based on the built-in <type>point</> data type,
using longitude and latitude for the coordinates. using longitude and latitude for the coordinates.
......
...@@ -553,12 +553,6 @@ SELECT key, count(*) FROM ...@@ -553,12 +553,6 @@ SELECT key, count(*) FROM
<sect2> <sect2>
<title>Compatibility</title> <title>Compatibility</title>
<para>
<emphasis>When upgrading from older versions, always load the new
version of this module into the database before restoring a dump.
Otherwise, many new features will be unavailable.</emphasis>
</para>
<para> <para>
As of PostgreSQL 9.0, <type>hstore</> uses a different internal As of PostgreSQL 9.0, <type>hstore</> uses a different internal
representation than previous versions. This presents no obstacle for representation than previous versions. This presents no obstacle for
......
...@@ -148,7 +148,7 @@ ...@@ -148,7 +148,7 @@
<para> <para>
This view, and the function <function>pg_stat_statements_reset</>, This view, and the function <function>pg_stat_statements_reset</>,
are available only in databases they have been specifically installed into are available only in databases they have been specifically installed into
by running the <filename>pg_stat_statements.sql</> install script. by installing the <literal>pg_stat_statements</> extension.
However, statistics are tracked across all databases of the server However, statistics are tracked across all databases of the server
whenever the <filename>pg_stat_statements</filename> module is loaded whenever the <filename>pg_stat_statements</filename> module is loaded
into the server, regardless of presence of the view. into the server, regardless of presence of the view.
......
...@@ -345,7 +345,9 @@ FROM crosstab3( ...@@ -345,7 +345,9 @@ FROM crosstab3(
<listitem> <listitem>
<para> <para>
Create a composite type describing the desired output columns, Create a composite type describing the desired output columns,
similar to the examples in the installation script. Then define a similar to the examples in
<filename>contrib/tablefunc/tablefunc--1.0.sql</>.
Then define a
unique function name accepting one <type>text</> parameter and returning unique function name accepting one <type>text</> parameter and returning
<type>setof your_type_name</>, but linking to the same underlying <type>setof your_type_name</>, but linking to the same underlying
<function>crosstab</> C function. For example, if your source data <function>crosstab</> C function. For example, if your source data
......
...@@ -35,8 +35,8 @@ mydb=# SELECT * FROM ts_token_type('testparser'); ...@@ -35,8 +35,8 @@ mydb=# SELECT * FROM ts_token_type('testparser');
<title>Usage</title> <title>Usage</title>
<para> <para>
Running the installation script creates a text search parser Installing the <literal>test_parser</> extension creates a text search
<literal>testparser</>. It has no user-configurable parameters. parser <literal>testparser</>. It has no user-configurable parameters.
</para> </para>
<para> <para>
......
...@@ -152,7 +152,7 @@ ...@@ -152,7 +152,7 @@
<emphasis>before</> loading the dump data! If your old installation <emphasis>before</> loading the dump data! If your old installation
had the <application>tsearch2</> objects in a schema other had the <application>tsearch2</> objects in a schema other
than <literal>public</>, be sure to adjust the than <literal>public</>, be sure to adjust the
<literal>tsearch2</literal> installation script so that the replacement <command>CREATE EXTENSION</> command so that the replacement
objects are created in that same schema. objects are created in that same schema.
</para> </para>
</step> </step>
......
...@@ -73,7 +73,7 @@ ...@@ -73,7 +73,7 @@
<title>Usage</title> <title>Usage</title>
<para> <para>
Running the installation script <filename>unaccent.sql</> creates a text Installing the <literal>unaccent</> extension creates a text
search template <literal>unaccent</> and a dictionary <literal>unaccent</> search template <literal>unaccent</> and a dictionary <literal>unaccent</>
based on it. The <literal>unaccent</> dictionary has the default based on it. The <literal>unaccent</> dictionary has the default
parameter setting <literal>RULES='unaccent'</>, which makes it immediately parameter setting <literal>RULES='unaccent'</>, which makes it immediately
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment