From: Tom Lane Date: Mon, 14 Feb 2011 06:10:44 +0000 (-0500) Subject: Fix obsolete references to old-style contrib installation methods. X-Git-Tag: REL9_1_ALPHA4~196 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f1fb4b0e63a677cdc86de667c75142b88a4edb65;p=postgresql Fix obsolete references to old-style contrib installation methods. --- diff --git a/doc/src/sgml/contrib-spi.sgml b/doc/src/sgml/contrib-spi.sgml index 85980f6e55..55e5ce2649 100644 --- a/doc/src/sgml/contrib-spi.sgml +++ b/doc/src/sgml/contrib-spi.sgml @@ -17,8 +17,13 @@ below) while creating a trigger. + + Each of the groups of functions described below is provided as a + separately-installable extension. + + - refint.c — Functions for Implementing Referential Integrity + refint — Functions for Implementing Referential Integrity check_primary_key() and @@ -59,7 +64,7 @@ - timetravel.c — Functions for Implementing Time Travel + timetravel — Functions for Implementing Time Travel Long ago, PostgreSQL had a built-in time travel feature @@ -152,7 +157,7 @@ CREATE TABLE mytab ( - autoinc.c — Functions for Autoincrementing Fields + autoinc — Functions for Autoincrementing Fields autoinc() is a trigger that stores the next value of @@ -179,7 +184,7 @@ CREATE TABLE mytab ( - insert_username.c — Functions for Tracking Who Changed a Table + insert_username — Functions for Tracking Who Changed a Table insert_username() is a trigger that stores the current @@ -200,7 +205,7 @@ CREATE TABLE mytab ( - moddatetime.c — Functions for Tracking Last Modification Time + moddatetime — Functions for Tracking Last Modification Time moddatetime() is a trigger that stores the current diff --git a/doc/src/sgml/contrib.sgml b/doc/src/sgml/contrib.sgml index 75d08d5f69..4504ab1749 100644 --- a/doc/src/sgml/contrib.sgml +++ b/doc/src/sgml/contrib.sgml @@ -46,38 +46,45 @@ Many modules supply new user-defined functions, operators, or types. To make use of one of these modules, after you have installed the code - you need to register the new objects in the database - system by running the SQL commands in the .sql file - supplied by the module. For example, + you need to register the new SQL objects in the database system. + In PostgreSQL 9.1 and later, this is done by executing + a command. In a fresh database, + you can simply do -psql -d dbname -f SHAREDIR/contrib/module.sql +CREATE EXTENSION module_name; - Here, SHAREDIR means the installation's share - directory (pg_config --sharedir will tell you what this is). - In most cases the script must be run by a database superuser. - - - - You need to run the .sql file in each database that you want + This command must be run by a database superuser. This registers the + new SQL objects in the current database only, so you need to run this + command in each database that you want the module's facilities to be available in. Alternatively, run it in - database template1 so that the module will be copied into + database template1 so that the extension will be copied into subsequently-created databases by default. - You can modify the first command in the .sql file to determine - which schema within the database the module's objects will be created in. - By default, they will be placed in public. + Many modules allow you to install their objects in a schema of your + choice. To do that, add SCHEMA + schema_name to the CREATE EXTENSION + command. By default, the objects will be placed in your current creation + target schema, typically public. - After a major-version upgrade of PostgreSQL, run the - installation script again, even though the module's objects might have - been brought forward from the old installation by dump and restore. - This ensures that any new functions will be available and any needed - corrections will be applied. + If your database was brought forward by dump and reload from a pre-9.1 + version of PostgreSQL, and you had been using the pre-9.1 + version of the module in it, you should instead do + + +CREATE EXTENSION module_name FROM unpackaged; + + + This will update the pre-9.1 objects of the module into a proper + extension object. Future updates to the module will be + managed by . + For more information about extension updates, see + . &adminpack; diff --git a/doc/src/sgml/dict-int.sgml b/doc/src/sgml/dict-int.sgml index b1d69e1a4c..17f98c05fa 100644 --- a/doc/src/sgml/dict-int.sgml +++ b/doc/src/sgml/dict-int.sgml @@ -47,8 +47,8 @@ Usage - Running the installation script creates a text search template - intdict_template and a dictionary intdict + Installing the dict_int extension creates a text search + template intdict_template and a dictionary intdict based on it, with the default parameters. You can alter the parameters, for example diff --git a/doc/src/sgml/dict-xsyn.sgml b/doc/src/sgml/dict-xsyn.sgml index e77889e388..23c5d983c1 100644 --- a/doc/src/sgml/dict-xsyn.sgml +++ b/doc/src/sgml/dict-xsyn.sgml @@ -87,8 +87,8 @@ word syn1 syn2 syn3 Usage - Running the installation script creates a text search template - xsyn_template and a dictionary xsyn + Installing the dict_xsyn extension creates a text search + template xsyn_template and a dictionary xsyn based on it, with default parameters. You can alter the parameters, for example diff --git a/doc/src/sgml/earthdistance.sgml b/doc/src/sgml/earthdistance.sgml index b43907615a..5b50da0510 100644 --- a/doc/src/sgml/earthdistance.sgml +++ b/doc/src/sgml/earthdistance.sgml @@ -10,7 +10,7 @@ The earthdistance module provides two different approaches to calculating great circle distances on the surface of the Earth. The one - described first depends on the cube package (which + described first depends on the cube module (which must be installed before earthdistance can be installed). The second one is based on the built-in point data type, using longitude and latitude for the coordinates. diff --git a/doc/src/sgml/hstore.sgml b/doc/src/sgml/hstore.sgml index 6ccc9d664b..f00b06aa7a 100644 --- a/doc/src/sgml/hstore.sgml +++ b/doc/src/sgml/hstore.sgml @@ -553,12 +553,6 @@ SELECT key, count(*) FROM Compatibility - - 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. - - As of PostgreSQL 9.0, hstore uses a different internal representation than previous versions. This presents no obstacle for diff --git a/doc/src/sgml/pgstatstatements.sgml b/doc/src/sgml/pgstatstatements.sgml index 58b37d243c..8cff1020bb 100644 --- a/doc/src/sgml/pgstatstatements.sgml +++ b/doc/src/sgml/pgstatstatements.sgml @@ -148,7 +148,7 @@ This view, and the function pg_stat_statements_reset, are available only in databases they have been specifically installed into - by running the pg_stat_statements.sql install script. + by installing the pg_stat_statements extension. However, statistics are tracked across all databases of the server whenever the pg_stat_statements module is loaded into the server, regardless of presence of the view. diff --git a/doc/src/sgml/tablefunc.sgml b/doc/src/sgml/tablefunc.sgml index 65917f7d30..dfb932f501 100644 --- a/doc/src/sgml/tablefunc.sgml +++ b/doc/src/sgml/tablefunc.sgml @@ -345,7 +345,9 @@ FROM crosstab3( 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 + contrib/tablefunc/tablefunc--1.0.sql. + Then define a unique function name accepting one text parameter and returning setof your_type_name, but linking to the same underlying crosstab C function. For example, if your source data diff --git a/doc/src/sgml/test-parser.sgml b/doc/src/sgml/test-parser.sgml index 0c53a3a413..0f2008cbe6 100644 --- a/doc/src/sgml/test-parser.sgml +++ b/doc/src/sgml/test-parser.sgml @@ -35,8 +35,8 @@ mydb=# SELECT * FROM ts_token_type('testparser'); Usage - Running the installation script creates a text search parser - testparser. It has no user-configurable parameters. + Installing the test_parser extension creates a text search + parser testparser. It has no user-configurable parameters. diff --git a/doc/src/sgml/tsearch2.sgml b/doc/src/sgml/tsearch2.sgml index 1933e2b966..8321c1efb4 100644 --- a/doc/src/sgml/tsearch2.sgml +++ b/doc/src/sgml/tsearch2.sgml @@ -152,7 +152,7 @@ before loading the dump data! If your old installation had the tsearch2 objects in a schema other than public, be sure to adjust the - tsearch2 installation script so that the replacement + CREATE EXTENSION command so that the replacement objects are created in that same schema. diff --git a/doc/src/sgml/unaccent.sgml b/doc/src/sgml/unaccent.sgml index 2ad66f7ee1..9c34c0bbd2 100644 --- a/doc/src/sgml/unaccent.sgml +++ b/doc/src/sgml/unaccent.sgml @@ -73,7 +73,7 @@ Usage - Running the installation script unaccent.sql creates a text + Installing the unaccent extension creates a text search template unaccent and a dictionary unaccent based on it. The unaccent dictionary has the default parameter setting RULES='unaccent', which makes it immediately