aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--HISTORY888
-rw-r--r--INSTALL1633
-rw-r--r--doc/src/sgml/installation.sgml144
-rw-r--r--doc/src/sgml/release.sgml31
4 files changed, 1391 insertions, 1305 deletions
diff --git a/HISTORY b/HISTORY
index de757aaccd0..b461c79f0c4 100644
--- a/HISTORY
+++ b/HISTORY
@@ -1,96 +1,98 @@
Release Notes
-
+
Release 7.3.1
-
+
Release date: 2002-12-18
-
+
This has a variety of fixes from 7.3.
_________________________________________________________________
-
- Migration to version 7.3.1
-
+
+Migration to version 7.3.1
+
A dump/restore is *not* required for those running 7.3. However, it
should be noted that the main PostgreSQL interface library, libpq, has
- a new major version number for this release, which may require
- recompilation of client code in certain cases.
- _________________________________________________________________
-
- Changes
-
- Fix a core dump of COPY TO when client/server encodings don't match (T
- om)
+ a new major version number for this release, which will require that
+ client code using libpq be relinked.
+ _________________________________________________________________
+
+Changes
+
+ Fix a core dump of COPY TO when client/server encodings don't match
+ (Tom)
Allow pg_dump to work with pre-7.2 servers (Tom)
- /contrib/adddepend fixes (Tom)
- Fix problem with deletion of per-user/per-database config settings (To
- m)
- /contrib/vacuumlo fix (Tom)
+ contrib/adddepend fixes (Tom)
+ Fix problem with deletion of per-user/per-database config settings
+ (Tom)
+ contrib/vacuumlo fix (Tom)
Allow 'password' encryption even when pg_shadow contains MD5 passwords
- (Bruce)
- /contrib/dbmirror fix (Steven Singer)
+ (Bruce)
+ contrib/dbmirror fix (Steven Singer)
Optimizer fixes (Tom)
- /contrib/tsearch fixes (Teodor Sigaev, Magnus)
- Allow locale names to be mixed case (Nicolai Tufar)
+ contrib/tsearch fixes (Teodor Sigaev, Magnus)
+ Fix encoding name resolution to work in Turkish locale (Nicolai Tufar)
Increment libpq library's major version number (Bruce)
pg_hba.conf error reporting fixes (Bruce, Neil)
- Add SCO Openserver 5.0.4 as a supported platform (Bruce)
+ Add SCO OpenServer 5.0.4 as a supported platform (Bruce)
Prevent EXPLAIN from crashing server (Tom)
SSL fixes (Nathan Mueller)
Prevent composite column creation via ALTER TABLE (Tom)
+ Fix conversion between LATIN9 and UNICODE (Peter)
+ Translation updates
_________________________________________________________________
-
+
Release 7.3
-
+
Release date: 2002-11-27
_________________________________________________________________
-
- Overview
-
+
+Overview
+
Major changes in this release:
-
+
Schemas
Schemas allow users to create objects in separate namespaces,
so two people or applications can have tables with the same
name. There is also a public schema for shared tables.
Table/index creation can be restricted by removing permissions
on the public schema.
-
+
Drop Column
PostgreSQL now supports the ALTER TABLE ... DROP COLUMN
functionality.
-
+
Table Functions
Functions returning multiple rows and/or multiple columns are
now much easier to use than before. You can call such a "table
function" in the SELECT FROM clause, treating its output like a
table. Also, PL/pgSQL functions can now return sets.
-
+
Prepared Queries
PostgreSQL now supports prepared queries, for improved
performance.
-
+
Dependency Tracking
PostgreSQL now records object dependencies, which allows
improvements in many areas. "DROP" statements now take either
CASCADE or RESTRICT to control whether dependent objects are
also dropped.
-
+
Privileges
Functions and procedural languages now have privileges, and
functions can be defined to run with the privileges of their
creator.
-
+
Internationalization
Both multibyte and locale support are now always enabled.
-
+
Logging
A variety of logging options have been enhanced.
-
+
Interfaces
A large number of interfaces have been moved to
http://gborg.postgresql.org where they can be developed and
released independently.
-
+
Functions/Identifiers
By default, functions can now take up to 32 parameters, and
identifiers can be up to 63 bytes long. Also, OPAQUE is now
@@ -98,17 +100,17 @@
each of the former meanings of OPAQUE in function argument and
result types.
_________________________________________________________________
-
- Migration to version 7.3
-
+
+Migration to version 7.3
+
A dump/restore using pg_dump is required for those wishing to migrate
data from any previous release. If your application examines the
system catalogs, additional changes will be required due to the
introduction of schemas in 7.3; for more information, see:
http://www.ca.postgresql.org/docs/momjian/upgrade_tips_7.3.
-
+
Observe the following incompatibilities:
-
+
* Pre-6.3 clients are no longer supported.
* "pg_hba.conf" now has a column for the user name and additional
features. Existing files need to be adjusted.
@@ -133,9 +135,9 @@
* An empty string ('') is no longer allowed as the input into an
integer field. Formerly, it was silently interpreted as 0.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Server Operation
Add pg_locks view to show locks (Neil)
@@ -145,7 +147,7 @@ Server Operation
Reserve the last few backend slots for superusers, add parameter
superuser_reserved_connections to control this (Nigel J. Andrews)
_________________________________________________________________
-
+
Performance
Improve startup by calling localtime() only once (Tom)
@@ -171,7 +173,7 @@ Performance
Tom)
Improved WAL write concurrency (Tom)
_________________________________________________________________
-
+
Privileges
Add privileges on functions and procedural languages (Peter)
@@ -183,7 +185,7 @@ Privileges
Allow functions to be executed with the privilege of the function
owner (Peter)
_________________________________________________________________
-
+
Server Configuration
Server log messages now tagged with LOG, not DEBUG (Bruce)
@@ -212,7 +214,7 @@ Server Configuration
Add param log_min_error_statement to print commands to logs on error
(Gavin)
_________________________________________________________________
-
+
Queries
Make cursors insensitive, meaning their contents do not change (Tom)
@@ -237,7 +239,7 @@ Queries
Allow FOR UPDATE to appear after LIMIT/OFFSET (Bruce)
Add variable autocommit (Tom, David Van Wie)
_________________________________________________________________
-
+
Object Manipulation
Make equals signs optional in CREATE DATABASE (Gavin Sherry)
@@ -276,7 +278,7 @@ Object Manipulation
Add /contrib/adddepend to handle pre-7.3 object dependencies (Rod)
Allow better casting when inserting/updating values (Tom)
_________________________________________________________________
-
+
Utility Commands
Have COPY TO output embedded carriage returns and newlines as \r and
@@ -321,7 +323,7 @@ Utility Commands
Fix rare index corruption when a page split affects bulk delete (Tom)
Fix ALTER TABLE ... ADD COLUMN for inheritance (Alvaro Herrera)
_________________________________________________________________
-
+
Data Types and Functions
Fix factorial(0) to return 1 (Bruce)
@@ -378,7 +380,7 @@ Data Types and Functions
Fix trigger/type/language functions returning OPAQUE to return
proper type (Tom)
_________________________________________________________________
-
+
Internationalization
Add additional encodings: Korean (JOHAB), Thai (WIN874), Vietnamese
@@ -399,7 +401,7 @@ Internationalization
aware (Peter)
New and updated translations
_________________________________________________________________
-
+
Server-side Languages
Allow recursive SQL function (Peter)
@@ -412,7 +414,7 @@ Server-side Languages
Make PL/pgSQL schema-aware (Joe)
Remove some memory leaks (Nigel J. Andrews, Tom)
_________________________________________________________________
-
+
Psql
Don't lowercase psql \connect database name for 7.2.0 compatibility
@@ -428,7 +430,7 @@ Psql
Have psql reports its version number on startup (Tom)
Allow \copy to specify column names (Tom)
_________________________________________________________________
-
+
Libpq
Add $HOME/.pgpass to store host/user password combinations (Alvaro
@@ -443,7 +445,7 @@ Libpq
Fix for SSL with non-blocking connections (Jack Bates)
Add libpq connection timeout parameter (Denis A Ustimenko)
_________________________________________________________________
-
+
JDBC
Allow JDBC to compile with JDK 1.4 (Dave)
@@ -458,7 +460,7 @@ JDBC
Fix MD5 encryption handling for multibyte servers (Jun Kawai)
Add support for prepared statements (Barry)
_________________________________________________________________
-
+
Miscellaneous Interfaces
Fixed ECPG bug concerning octal numbers in single quotes (Michael)
@@ -478,7 +480,7 @@ Miscellaneous Interfaces
Add pg_on_connection_loss command to libpgtcl (Gerhard Hintermayer,
Tom)
_________________________________________________________________
-
+
Source Code
Fix for parallel make (Peter)
@@ -537,7 +539,7 @@ Source Code
Remove parameter wal_files because WAL files are now recycled (Bruce)
Add version numbers to heap pages (Tom)
_________________________________________________________________
-
+
Contrib
Allow inet arrays in /contrib/array (Neil)
@@ -564,22 +566,22 @@ Contrib
Fixes to /contrib/cube (Bruno Wolff)
Improve /contrib/fulltextindex (Christopher)
_________________________________________________________________
-
+
Release 7.2.3
-
+
Release date: 2002-10-01
-
+
This has a variety of fixes from 7.2.2, including fixes to prevent
possible data loss.
_________________________________________________________________
-
- Migration to version 7.2.3
-
+
+Migration to version 7.2.3
+
A dump/restore is *not* required for those running 7.2.X.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Prevent possible compressed transaction log loss (Tom)
Prevent non-superuser from increasing most recent vacuum info (Tom)
Handle pre-1970 date values in newer versions of glibc (Tom)
@@ -587,21 +589,21 @@ Contrib
Prevent spinlock hangs on SMP PPC machines (Tomoyuki Niijima)
Fix pg_dump to properly dump FULL JOIN USING (Tom)
_________________________________________________________________
-
+
Release 7.2.2
-
+
Release date: 2002-08-23
-
+
This has a variety of fixes from 7.2.1.
_________________________________________________________________
-
- Migration to version 7.2.2
-
+
+Migration to version 7.2.2
+
A dump/restore is *not* required for those running 7.2.X.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Allow EXECUTE of "CREATE TABLE AS ... SELECT" in PL/pgSQL (Tom)
Fix for compressed transaction log id wraparound (Tom)
Fix PQescapeBytea/PQunescapeBytea so that they handle bytes > 0x7f (Ta
@@ -618,21 +620,21 @@ Contrib
Fix for crash with long DATA strings (Thomes, Neil)
Fix for repeat(), lpad(), rpad() and long strings (Neil)
_________________________________________________________________
-
+
Release 7.2.1
-
+
Release date: 2002-03-21
-
+
This has a variety of fixes from 7.2.
_________________________________________________________________
-
- Migration to version 7.2.1
-
+
+Migration to version 7.2.1
+
A dump/restore is *not* required for those running 7.2.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Ensure that sequence counters do not go backwards after a crash (Tom)
Fix pgaccess kanji-coversion key binding (Tatsuo)
Optimizer improvements (Tom)
@@ -652,57 +654,57 @@ Contrib
Fix for array subscripts handling (Tom)
Allow EXECUTE of "CREATE TABLE AS ... SELECT" in PL/pgSQL (Tom)
_________________________________________________________________
-
+
Release 7.2
-
+
Release date: 2002-02-04
_________________________________________________________________
-
- Overview
-
+
+Overview
+
This release improves PostgreSQL for use in high-volume applications.
-
+
Major changes in this release:
-
+
VACUUM
Vacuuming no longer locks tables, thus allowing normal user
access during the vacuum. A new "VACUUM FULL" command does
old-style vacuum by locking the table and shrinking the on-disk
copy of the table.
-
+
Transactions
There is no longer a problem with installations that exceed
four billion transactions.
-
+
OIDs
OIDs are now optional. Users can now create tables without OIDs
for cases where OID usage is excessive.
-
+
Optimizer
The system now computes histogram column statistics during
"ANALYZE", allowing much better optimizer choices.
-
+
Security
A new MD5 encryption option allows more secure storage and
transfer of passwords. A new Unix-domain socket authentication
option is available on Linux and BSD systems.
-
+
Statistics
Administrators can use the new table access statistics module
to get fine-grained information about table and index usage.
-
+
Internationalization
Program and library messages can now be displayed in several
languages.
_________________________________________________________________
-
- Migration to version 7.2
-
+
+Migration to version 7.2
+
A dump/restore using "pg_dump" is required for those wishing to
migrate data from any previous release.
-
+
Observe the following incompatibilities:
-
+
* The semantics of the "VACUUM" command have changed in this
release. You may wish to update your maintenance procedures
accordingly.
@@ -719,14 +721,14 @@ Contrib
need to rewrite your applications.
* The timestamp(), time(), and interval() functions are no longer
available. Instead of timestamp(), use timestamp 'string' or CAST.
-
+
The SELECT ... LIMIT #,# syntax will be removed in the next release.
You should change your queries to use separate LIMIT and OFFSET
clauses, e.g. LIMIT 10 OFFSET 20.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Server Operation
Create temporary files in a separate directory (Bruce)
@@ -751,7 +753,7 @@ Server Operation
Superuser ID now fixed at 1 (Peter E)
New pg_ctl "reload" option (Tom)
_________________________________________________________________
-
+
Performance
Optimizer improvements (Tom)
@@ -765,7 +767,7 @@ Performance
R-tree performance improvements (Kenneth Been)
B-tree splits more efficient (Tom)
_________________________________________________________________
-
+
Privileges
Change UPDATE, DELETE permissions to be distinct (Peter E)
@@ -778,7 +780,7 @@ Privileges
Disallow access to pg_statistic for non-superuser, add user-accessible
views (Tom)
_________________________________________________________________
-
+
Client Authentication
Fork postmaster before doing authentication to prevent hangs (Peter E)
@@ -789,7 +791,7 @@ Client Authentication
PAM authentication (Dominic J. Eidson)
Load pg_hba.conf and pg_ident.conf only on startup and SIGHUP (Bruce)
_________________________________________________________________
-
+
Server Configuration
Interpretation of some time zone abbreviations as Australian rather th
@@ -801,7 +803,7 @@ Server Configuration
New parameter to set client authentication timeout (Tom)
New parameter to set maximum number of open files (Tom)
_________________________________________________________________
-
+
Queries
Statements added by INSERT rules now execute after the INSERT (Jan)
@@ -815,7 +817,7 @@ Queries
Fix for LIMIT, DISTINCT ON pushed into subqueries (Tom)
Fix nested EXCEPT/INTERSECT (Tom)
_________________________________________________________________
-
+
Schema Manipulation
Fix SERIAL in temporary tables (Bruce)
@@ -843,7 +845,7 @@ Schema Manipulation
, Teodor Sigaev, Tom)
Enable partial indexes (Martijn van Oosterhout)
_________________________________________________________________
-
+
Utility Commands
Add RESET ALL, SHOW ALL (Marko Kreen)
@@ -859,7 +861,7 @@ Utility Commands
Fix permission checks for CREATE INDEX (Tom)
Disallow inappropriate use of CREATE/DROP INDEX/TRIGGER/VIEW (Tom)
_________________________________________________________________
-
+
Data Types and Functions
SUM(), AVG(), COUNT() now uses int8 internally for speed (Tom)
@@ -905,7 +907,7 @@ Data Types and Functions
Some datatype() function calls now evaluated differently
Add support for Julian and ISO time specifications (Thomas)
_________________________________________________________________
-
+
Internationalization
National language support in psql, pg_dump, libpq, and server (Peter E
@@ -921,7 +923,7 @@ Internationalization
Make mic2ascii() non-ASCII aware (Tatsuo)
Reject invalid multibyte character sequences (Tatsuo)
_________________________________________________________________
-
+
PL/pgSQL
Now uses portals for SELECT loops, allowing huge result sets (Jan)
@@ -937,25 +939,25 @@ PL/pgSQL
Memory leak fix (Jan, Tom)
Make trailing semicolon optional (Tom)
_________________________________________________________________
-
+
PL/Perl
New untrusted PL/Perl (Alex Pilosov)
PL/Perl is now built on some platforms even if libperl is not shared (
Peter E)
_________________________________________________________________
-
+
PL/Tcl
Now reports errorInfo (Vsevolod Lobko)
Add spi_lastoid function (bob@redivi.com)
_________________________________________________________________
-
+
PL/Python
...is new (Andrew Bosma)
_________________________________________________________________
-
+
Psql
\d displays indexes in unique, primary groupings (Christopher Kings-Ly
@@ -966,7 +968,7 @@ Psql
)
Format the correct number of columns for Unicode (Patrice)
_________________________________________________________________
-
+
Libpq
New function PQescapeString() to escape quotes in command strings (Flo
@@ -974,7 +976,7 @@ Libpq
New function PQescapeBytea() escapes binary strings for use as SQL str
ing literals
_________________________________________________________________
-
+
JDBC
Return OID of INSERT (Ken K)
@@ -1012,7 +1014,7 @@ JDBC
MD5 password encryption support (Jeremy Wohl)
Fix to actually use type cache (Ned Wolpert)
_________________________________________________________________
-
+
ODBC
Remove query size limit (Hiroshi)
@@ -1026,7 +1028,7 @@ ODBC
MD5 password encryption support (Bruce)
Add more compatibility functions to odbc.sql (Peter E)
_________________________________________________________________
-
+
ECPG
EXECUTE ... INTO implemented (Christof Petig)
@@ -1040,7 +1042,7 @@ ECPG
All function names with external linkage are now prefixed by ECPG
Fixes for arrays of structures (Michael)
_________________________________________________________________
-
+
Misc. Interfaces
Python fix fetchone() (Gerhard Haring)
@@ -1050,7 +1052,7 @@ Misc. Interfaces
Prevent output of default index op class in pg_dump (Tom)
Fix libpgeasy memory leak (Bruce)
_________________________________________________________________
-
+
Build and Install
Configure, dynamic loader, and shared library fixes (Peter E)
@@ -1069,7 +1071,7 @@ Build and Install
Rename config.h to pg_config.h (Peter E)
Reorganize installation layout of header files (Peter E)
_________________________________________________________________
-
+
Source Code
Remove SEP_CHAR (Bruce)
@@ -1085,7 +1087,7 @@ Source Code
Add 'volatile' usage in spinlock structures
Improve signal handling logic (Tom)
_________________________________________________________________
-
+
Contrib
New contrib/rtree_gist (Oleg Bartunov, Teodor Sigaev)
@@ -1101,19 +1103,19 @@ Contrib
New pg_upgrade utility (Bruce)
Add new pg_resetxlog options (Bruce, Tom)
_________________________________________________________________
-
+
Release 7.1.3
-
+
Release date: 2001-08-15
_________________________________________________________________
-
- Migration to version 7.1.3
-
+
+Migration to version 7.1.3
+
A dump/restore is *not* required for those running 7.1.X.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Remove unused WAL segements of large transactions (Tom)
Multiaction rule fix (Tom)
PL/pgSQL memory allocation fix (Jan)
@@ -1126,21 +1128,21 @@ Disable COPY TO/FROM a view (Tom)
Cygwin build (Jason Tishler)
_________________________________________________________________
-
+
Release 7.1.2
-
+
Release date: 2001-05-11
-
+
This has one fix from 7.1.1.
_________________________________________________________________
-
- Migration to version 7.1.2
-
+
+Migration to version 7.1.2
+
A dump/restore is *not* required for those running 7.1.X.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Fix PL/pgSQL SELECTs when returning no rows
Fix for psql backslash core dump
Referential integrity permission fix
@@ -1148,21 +1150,21 @@ Optimizer fixes
pg_dump cleanups
_________________________________________________________________
-
+
Release 7.1.1
-
+
Release date: 2001-05-05
-
+
This has a variety of fixes from 7.1.
_________________________________________________________________
-
- Migration to version 7.1.1
-
+
+Migration to version 7.1.1
+
A dump/restore is *not* required for those running 7.1.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Fix for numeric MODULO operator (Tom)
pg_dump fixes (Philip)
pg_dump can dump 7.0 databases (Philip)
@@ -1179,16 +1181,16 @@ EXTRACT can now take string argument (Thomas)
Python fixes (Darcy)
_________________________________________________________________
-
+
Release 7.1
-
+
Release date: 2001-04-13
-
+
This release focuses on removing limitations that have existed in the
PostgreSQL code for many years.
-
+
Major changes in this release:
-
+
Write-ahead Log (WAL)
To maintain database consistency in case of an operating system
crash, previous releases of PostgreSQL have forced all data
@@ -1197,25 +1199,25 @@ Python fixes (Darcy)
performance. If you have been using -F in previous releases to
disable disk flushes, you may want to consider discontinuing
its use.
-
+
TOAST
TOAST - Previous releases had a compiled-in row length limit,
typically 8k - 32k. This limit made storage of long text fields
difficult. With TOAST, long rows of any length can be stored
with good performance.
-
+
Outer Joins
We now support outer joins. The UNION/NOT IN workaround for
outer joins is no longer required. We use the SQL92 outer join
syntax.
-
+
Function Manager
The previous C function manager did not handle null values
properly, nor did it support 64-bit CPU's (Alpha). The new
function manager does. You can continue using your old custom
functions, but you may want to rewrite them in the future to
use the new function manager call interface.
-
+
Complex Queries
A large number of complex queries that were unsupported in
previous releases now work. Many combinations of views,
@@ -1223,15 +1225,15 @@ Python fixes (Darcy)
tables now work properly. Inherited tables are now accessed by
default. Subqueries in FROM are now supported.
_________________________________________________________________
-
- Migration to version 7.1
-
+
+Migration to version 7.1
+
A dump/restore using pg_dump is required for those wishing to migrate
data from any previous release.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Bug Fixes
---------
Many multibyte/Unicode/locale fixes (Tatsuo and others)
@@ -1419,21 +1421,21 @@ New contrib/pg_control utility (Oliver)
New FreeBSD tools ipc_check, start-scripts/freebsd
_________________________________________________________________
-
+
Release 7.0.3
-
+
Release date: 2000-11-11
-
+
This has a variety of fixes from 7.0.2.
_________________________________________________________________
-
- Migration to version 7.0.3
-
+
+Migration to version 7.0.3
+
A dump/restore is *not* required for those running 7.0.*.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Jdbc fixes (Peter)
Large object fix (Tom)
Fix lean in COPY WITH OIDS leak (Tom)
@@ -1475,39 +1477,39 @@ Fix for inserting/copying longer multibyte strings into char() data
Fix for crash of backend, on abort (Tom)
_________________________________________________________________
-
+
Release 7.0.2
-
+
Release date: 2000-06-05
-
+
This is a repackaging of 7.0.1 with added documentation.
_________________________________________________________________
-
- Migration to version 7.0.2
-
+
+Migration to version 7.0.2
+
A dump/restore is *not* required for those running 7.*.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Added documentation to tarball.
_________________________________________________________________
-
+
Release 7.0.1
-
+
Release date: 2000-06-01
-
+
This is a cleanup release for 7.0.
_________________________________________________________________
-
- Migration to version 7.0.1
-
+
+Migration to version 7.0.1
+
A dump/restore is *not* required for those running 7.0.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Fix many CLUSTER failures (Tom)
Allow ALTER TABLE RENAME works on indexes (Tom)
Fix plpgsql to handle datetime->timestamp and timespan->interval (Bruce)
@@ -1534,50 +1536,50 @@ JDBC ResultSet.getTimestamp() fix (Gregory Krasnow & Floyd Marinescu)
ecpg changes (Michael)
_________________________________________________________________
-
+
Release 7.0
-
+
Release date: 2000-05-08
-
+
This release contains improvements in many areas, demonstrating the
continued growth of PostgreSQL. There are more improvements and fixes
in 7.0 than in any previous release. The developers have confidence
that this is the best release yet; we do our best to put out only
solid releases, and this one is no exception.
-
+
Major changes in this release:
-
+
Foreign Keys
Foreign keys are now implemented, with the exception of PARTIAL
MATCH foreign keys. Many users have been asking for this
feature, and we are pleased to offer it.
-
+
Optimizer Overhaul
Continuing on work started a year ago, the optimizer has been
improved, allowing better query plan selection and faster
performance with less memory usage.
-
+
Updated psql
psql, our interactive terminal monitor, has been updated with a
variety of new features. See the psql manual page for details.
-
+
Join Syntax
SQL92 join syntax is now supported, though only as INNER JOIN
for this release. JOIN, NATURAL JOIN, JOIN/USING, and JOIN/ON
are available, as are column correlation names.
_________________________________________________________________
-
- Migration to version 7.0
-
+
+Migration to version 7.0
+
A dump/restore using pg_dump is required for those wishing to migrate
data from any previous release of PostgreSQL. For those upgrading from
6.5.*, you may instead use pg_upgrade to upgrade to this release;
however, a full dump/reload installation is always the most robust
method for upgrades.
-
+
Interface and compatibility issues to consider for the new release
include:
-
+
* The date/time types datetime and timespan have been superseded by
the SQL92-defined types timestamp and interval. Although there has
been some effort to ease the transition by allowing PostgreSQL to
@@ -1597,9 +1599,9 @@ ecpg changes (Michael)
in ambiguity with other types implementing LENGTH such as the
geometric types.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Bug Fixes
---------
Prevent function calls exceeding maximum number of arguments (Tom)
@@ -1922,43 +1924,43 @@ Fixes for Alpha compiles
New multibyte encodings
_________________________________________________________________
-
+
Release 6.5.3
-
+
Release date: 1999-10-13
-
+
This is basically a cleanup release for 6.5.2. We have added a new
PgAccess that was missing in 6.5.2, and installed an NT-specific fix.
_________________________________________________________________
-
- Migration to version 6.5.3
-
+
+Migration to version 6.5.3
+
A dump/restore is *not* required for those running 6.5.*.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Updated version of pgaccess 0.98
NT-specific patch
Fix dumping rules on inherited tables
_________________________________________________________________
-
+
Release 6.5.2
-
+
Release date: 1999-09-15
-
+
This is basically a cleanup release for 6.5.1. We have fixed a variety
of problems reported by 6.5.1 users.
_________________________________________________________________
-
- Migration to version 6.5.2
-
+
+Migration to version 6.5.2
+
A dump/restore is *not* required for those running 6.5.*.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
subselect+CASE fixes(Tom)
Add SHLIB_LINK setting for solaris_i386 and solaris_sparc ports(Daren Sefcik)
Fixes for CASE in WHERE join clauses(Tom)
@@ -1987,22 +1989,22 @@ Repair incorrect cleanup of heap memory allocation during transaction abort(Tom
Updated version of pgaccess 0.98
_________________________________________________________________
-
+
Release 6.5.1
-
+
Release date: 1999-07-15
-
+
This is basically a cleanup release for 6.5. We have fixed a variety
of problems reported by 6.5 users.
_________________________________________________________________
-
- Migration to version 6.5.1
-
+
+Migration to version 6.5.1
+
A dump/restore is *not* required for those running 6.5.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Add NT README file
Portability fixes for linux_ppc, IRIX, linux_alpha, OpenBSD, alpha
Remove QUERY_LIMIT, use SELECT...LIMIT
@@ -2028,18 +2030,18 @@ Fix some compiler warnings (Tomoaki Nishiyama)
Add Win1250 (Czech) support (Pavel Behal)
_________________________________________________________________
-
+
Release 6.5
-
+
Release date: 1999-06-09
-
+
This release marks a major step in the development team's mastery of
the source code we inherited from Berkeley. You will see we are now
easily adding major features, thanks to the increasing size and
experience of our world-wide development team.
-
+
Here is a brief summary of the more notable changes:
-
+
Multiversion concurrency control(MVCC)
This removes our old table-level locking, and replaces it with
a locking system that is superior to most commercial database
@@ -2053,38 +2055,38 @@ Add Win1250 (Czech) support (Pavel Behal)
systems. So, basically, we no longer are restricted by simple
table-level locking; we have something better than row-level
locking.
-
+
Hot backups from pg_dump
pg_dump takes advantage of the new MVCC features to give a
consistent database dump/backup while the database stays online
and available for queries.
-
+
Numeric data type
We now have a true numeric data type, with user-specified
precision.
-
+
Temporary tables
Temporary tables are guaranteed to have unique names within a
database session, and are destroyed on session exit.
-
+
New SQL features
We now have CASE, INTERSECT, and EXCEPT statement support. We
have new LIMIT/OFFSET, SET TRANSACTION ISOLATION LEVEL, SELECT
... FOR UPDATE, and an improved LOCK TABLE command.
-
+
Speedups
We continue to speed up PostgreSQL, thanks to the variety of
talents within our team. We have sped up memory allocation,
optimization, table joins, and row transfer routines.
-
+
Ports
We continue to expand our port list, this time including
Windows NT/ix86 and NetBSD/arm32.
-
+
Interfaces
Most interfaces have new versions, and existing functionality
has been improved.
-
+
Documentation
New and updated material is present throughout the
documentation. New FAQs have been contributed for SGI and AIX
@@ -2098,20 +2100,20 @@ Add Win1250 (Czech) support (Pavel Behal)
on obtaining the PostgreSQL source tree via anonymous CVS and
CVSup.
_________________________________________________________________
-
- Migration to version 6.5
-
+
+Migration to version 6.5
+
A dump/restore using pg_dump is required for those wishing to migrate
data from any previous release of PostgreSQL. pg_upgrade can *not* be
used to upgrade to this release because the on-disk structure of the
tables has changed compared to previous releases.
-
+
The new Multiversion Concurrency Control (MVCC) features can give
somewhat different behaviors in multiuser environments. *Read and
understand the following section to ensure that your existing
applications will give you the behavior you need.*
_________________________________________________________________
-
+
Multiversion Concurrency Control
Because readers in 6.5 don't lock data, regardless of transaction
@@ -2121,32 +2123,32 @@ Multiversion Concurrency Control
sometime after the statement or transaction began) nor that the row is
protected from being deleted or updated by concurrent transactions
before the current transaction does a commit or rollback.
-
+
To ensure the actual existence of a row and protect it against
concurrent updates one must use "SELECT FOR UPDATE" or an appropriate
"LOCK TABLE" statement. This should be taken into account when porting
applications from previous releases of PostgreSQL and other
environments.
-
+
Keep the above in mind if you are using "contrib/refint.*" triggers
for referential integrity. Additional techniques are required now. One
way is to use "LOCK parent_table IN SHARE ROW EXCLUSIVE MODE" command
if a transaction is going to update/delete a primary key and use "LOCK
parent_table IN SHARE MODE" command if a transaction is going to
update/insert a foreign key.
-
+
Note: Note that if you run a transaction in SERIALIZABLE mode then
you must execute the "LOCK" commands above before execution of any
DML statement ("SELECT/INSERT/DELETE/UPDATE/FETCH/COPY_TO") in the
transaction.
-
+
These inconveniences will disappear in the future when the ability to
read dirty (uncommitted) data (regardless of isolation level) and true
referential integrity will be implemented.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Bug Fixes
---------
Fix text<->float8 and text<->float4 conversion functions(Thomas)
@@ -2313,40 +2315,40 @@ Improve file handling to be more uniform, prevent file descriptor leak(Tom)
New install commands for plpgsql(Jan)
_________________________________________________________________
-
+
Release 6.4.2
-
+
Release date: 1998-12-20
-
+
The 6.4.1 release was improperly packaged. This also has one
additional bug fix.
_________________________________________________________________
-
- Migration to version 6.4.2
-
+
+Migration to version 6.4.2
+
A dump/restore is *not* required for those running 6.4.*.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Fix for datetime constant problem on some platforms(Thomas)
_________________________________________________________________
-
+
Release 6.4.1
-
+
Release date: 1998-12-18
-
+
This is basically a cleanup release for 6.4. We have fixed a variety
of problems reported by 6.4 users.
_________________________________________________________________
-
- Migration to version 6.4.1
-
+
+Migration to version 6.4.1
+
A dump/restore is *not* required for those running 6.4.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Add pg_dump -N flag to force double quotes around identifiers. This is
the default(Thomas)
Fix for NOT in where clause causing crash(Bruce)
@@ -2378,16 +2380,16 @@ Add routines to help with single-byte (internal) character type(Thomas)
Compilation of libpq for Win32 fixes(Magnus)
Upgrade to PyGreSQL 2.2(D'Arcy)
_________________________________________________________________
-
+
Release 6.4
-
+
Release date: 1998-10-30
-
+
There are *many* new features and improvements in this release. Thanks
to our developers and maintainers, nearly every aspect of the system
has received some attention since the previous release. Here is a
brief, incomplete summary:
-
+
* Views and rules are now functional thanks to extensive new code in
the rewrite rules system from Jan Wieck. He also wrote a chapter
on it for the Programmer's Guide.
@@ -2417,15 +2419,15 @@ Upgrade to PyGreSQL 2.2(D'Arcy)
some attention, and should be more robust for more platforms than
it has ever been.
_________________________________________________________________
-
- Migration to version 6.4
-
+
+Migration to version 6.4
+
A dump/restore using pg_dump or pg_dumpall is required for those
wishing to migrate data from any previous release of PostgreSQL.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Bug Fixes
---------
Fix for a tiny memory leak in PQsetdb/PQfinish(Bryan)
@@ -2622,33 +2624,33 @@ smarter perl configuration(Brook)
configure uses supplied install-sh if no install script found(Tom)
new Makefile.shlib for shared library configuration(Tom)
_________________________________________________________________
-
+
Release 6.3.2
-
+
Release date: 1998-04-07
-
+
This is a bug-fix release for 6.3.x. Refer to the release notes for
version 6.3 for a more complete summary of new features.
-
+
Summary:
-
+
* Repairs automatic configuration support for some platforms,
including Linux, from breakage inadvertently introduced in version
6.3.1.
* Correctly handles function calls on the left side of BETWEEN and
LIKE clauses.
-
+
A dump/restore is NOT required for those running 6.3 or 6.3.1. A make
distclean, make, and make install is all that is required. This last
step should be performed while the postmaster is not running. You
should re-link any custom applications that use PostgreSQL libraries.
-
+
For upgrades from pre-6.3 installations, refer to the installation and
migration instructions for version 6.3.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Configure detection improvements for tcl/tk(Brook Milligan, Alvin)
Manual page improvements(Bruce)
BETWEEN and LIKE fix(Thomas)
@@ -2669,29 +2671,29 @@ Makefile dependency cleanup(Jeroen van Vianen)
ASSERT fixes(Bruce)
_________________________________________________________________
-
+
Release 6.3.1
-
+
Release date: 1998-03-23
-
+
Summary:
-
+
* Additional support for multibyte character sets.
* Repair byte ordering for mixed-endian clients and servers.
* Minor updates to allowed SQL syntax.
* Improvements to the configuration autodetection for installation.
-
+
A dump/restore is NOT required for those running 6.3. A make
distclean, make, and make install is all that is required. This last
step should be performed while the postmaster is not running. You
should re-link any custom applications that use PostgreSQL libraries.
-
+
For upgrades from pre-6.3 installations, refer to the installation and
migration instructions for version 6.3.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
ecpg cleanup/fixes, now version 1.1(Michael Meskes)
pg_user cleanup(Bruce)
large object fix for pg_dump and tclsh (alvin)
@@ -2721,14 +2723,14 @@ Solaris compile fix(Albert Chin-A-Young)
Better identify tcl and tk libs and includes(Bruce)
_________________________________________________________________
-
+
Release 6.3
-
+
Release date: 1998-03-01
-
+
There are *many* new features and improvements in this release. Here
is a brief, incomplete summary:
-
+
* Many new SQL features, including full SQL92 subselect capability
(everything is here but target-list subselects).
* Support for client-side environment variables to specify time zone
@@ -2739,14 +2741,14 @@ Better identify tcl and tk libs and includes(Bruce)
permissions have changed.
* Old-style time travel has been removed. Performance has been
improved.
-
+
Note: Bruce Momjian wrote the following notes to introduce the new
release.
-
+
There are some general 6.3 issues that I want to mention. These are
only the big items that can not be described in one sentence. A review
of the detailed changes list is still needed.
-
+
First, we now have subselects. Now that we have them, I would like to
mention that without subselects, SQL is a very limited language.
Subselects are a major feature, and you should review your code for
@@ -2755,12 +2757,12 @@ Better identify tcl and tk libs and includes(Bruce)
may think. Vadim has put us on the big SQL map with subselects, and
fully functional ones too. The only thing you can't do with subselects
is to use them in the target list.
-
+
Second, 6.3 uses Unix domain sockets rather than TCP/IP by default. To
enable connections from other machines, you have to use the new
postmaster -i option, and of course edit "pg_hba.conf". Also, for this
reason, the format of "pg_hba.conf" has changed.
-
+
Third, char() fields will now allow faster access than varchar() or
text. Specifically, the text and varchar() have a penalty for access
to any columns after the first column of this type. char() used to
@@ -2768,7 +2770,7 @@ Better identify tcl and tk libs and includes(Bruce)
that you redesign some of your tables, especially if you have short
character columns that you have defined as varchar() or text. This and
other changes make 6.3 even faster than earlier releases.
-
+
We now have passwords definable independent of any Unix file. There
are new SQL USER commands. See the Administrator's Guide for more
information. There is a new table, pg_shadow, which is used to store
@@ -2776,41 +2778,41 @@ Better identify tcl and tk libs and includes(Bruce)
SELECT-able by the postgres super-user. pg_user is now a view of
pg_shadow, and is SELECT-able by PUBLIC. You should keep using pg_user
in your application without changes.
-
+
User-created tables now no longer have SELECT permission to PUBLIC by
default. This was done because the ANSI standard requires it. You can
of course GRANT any permissions you want after the table is created.
System tables continue to be SELECT-able by PUBLIC.
-
+
We also have real deadlock detection code. No more sixty-second
timeouts. And the new locking code implements a FIFO better, so there
should be less resource starvation during heavy use.
-
+
Many complaints have been made about inadequate documentation in
previous releases. Thomas has put much effort into many new manuals
for this release. Check out the doc/ directory.
-
+
For performance reasons, time travel is gone, but can be implemented
using triggers (see "pgsql/contrib/spi/README"). Please check out the
new \d command for types, operators, etc. Also, views have their own
permissions now, not based on the underlying tables, so permissions on
them have to be set separately. Check "/pgsql/interfaces" for some new
ways to talk to PostgreSQL.
-
+
This is the first release that really required an explanation for
existing users. In many ways, this was necessary because the new
release removes many limitations, and the work-arounds people were
using are no longer needed.
_________________________________________________________________
-
- Migration to version 6.3
-
+
+Migration to version 6.3
+
A dump/restore using pg_dump or pg_dumpall is required for those
wishing to migrate data from any previous release of PostgreSQL.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Bug Fixes
---------
Fix binary cursors broken by MOVE implementation(Vadim)
@@ -2979,33 +2981,33 @@ Add string functions to regression suite(Thomas)
Expand a few function names formerly truncated to 16 characters(Thomas)
Remove un-needed malloc() calls and replace with palloc()(Bruce)
_________________________________________________________________
-
+
Release 6.2.1
-
+
Release date: 1997-10-17
-
+
6.2.1 is a bug-fix and usability release on 6.2.
-
+
Summary:
-
+
* Allow strings to span lines, per SQL92.
* Include example trigger function for inserting user names on table
updates.
-
+
This is a minor bug-fix release on 6.2. For upgrades from pre-6.2
systems, a full dump/reload is required. Refer to the 6.2 release
notes for instructions.
_________________________________________________________________
-
- Migration from version 6.2 to version 6.2.1
-
+
+Migration from version 6.2 to version 6.2.1
+
This is a minor bug-fix release. A dump/reload is not required from
version 6.2, but is required from any release prior to 6.2.
-
+
In upgrading from version 6.2, if you choose to dump/reload you will
find that avg(money) is now calculated correctly. All other bug fixes
take effect upon updating the executables.
-
+
Another way to avoid dump/reload is to use the following SQL command
from "psql" to update the existing system table:
update pg_aggregate set aggfinalfn = 'cash_div_flt8'
@@ -3014,9 +3016,9 @@ Remove un-needed malloc() calls and replace with palloc()(Bruce)
This will need to be done to every existing database, including
template1.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Allow TIME and TYPE column names(Thomas)
Allow larger range of true/false as boolean values(Thomas)
Support output of "now" and "current"(Thomas)
@@ -3030,32 +3032,32 @@ Documented new libpq function to return affected rows, PQcmdTuples(Bruce)
Trigger function for inserting user names for INSERT/UPDATE(Brook Milligan)
_________________________________________________________________
-
+
Release 6.2
-
+
Release date: 1997-10-02
-
+
A dump/restore is required for those wishing to migrate data from
previous releases of PostgreSQL.
_________________________________________________________________
-
- Migration from version 6.1 to version 6.2
-
+
+Migration from version 6.1 to version 6.2
+
This migration requires a complete dump of the 6.1 database and a
restore of the database in 6.2.
-
+
Note that the "pg_dump" and "pg_dumpall" utility from 6.2 should be
used to dump the 6.1 database.
_________________________________________________________________
-
- Migration from version 1.x to version 6.2
-
+
+Migration from version 1.x to version 6.2
+
Those migrating from earlier 1.* releases should first upgrade to 1.09
because the COPY output format was improved from the 1.02 release.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Bug Fixes
---------
Fix problems with pg_dump for inheritance, sequences, archive tables(Bruce)
@@ -3169,21 +3171,21 @@ Massive commit to run PGINDENT on all *.c and *.h files(Bruce)
Files moved to /src/tools directory(Bruce)
SPI and Trigger programming guides (Vadim & D'Arcy)
_________________________________________________________________
-
+
Release 6.1.1
-
+
Release date: 1997-07-22
_________________________________________________________________
-
- Migration from version 6.1 to version 6.1.1
-
+
+Migration from version 6.1 to version 6.1.1
+
This is a minor bug-fix release. A dump/reload is not required from
version 6.1, but is required from any release prior to 6.1. Refer to
the release notes for 6.1 for more details.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
fix for SET with options (Thomas)
allow pg_dump/pg_dumpall to preserve ownership of all tables/objects(Bruce)
new psql \connect option allows changing usernames without changing databases
@@ -3203,20 +3205,20 @@ allow underscores in usernames(Bruce)
pg_dumpall now returns proper status, portability fix(Bruce)
_________________________________________________________________
-
+
Release 6.1
-
+
Release date: 1997-06-08
-
+
The regression tests have been adapted and extensively modified for
the 6.1 release of PostgreSQL.
-
+
Three new data types (datetime, timespan, and circle) have been added
to the native set of PostgreSQL types. Points, boxes, paths, and
polygons have had their output formats made consistent across the data
types. The polygon output in misc.out has only been spot-checked for
correctness relative to the original regression output.
-
+
PostgreSQL 6.1 introduces a new, alternate optimizer which uses
genetic algorithms. These algorithms introduce a random behavior in
the ordering of query results when the query contains multiple
@@ -3227,33 +3229,33 @@ pg_dumpall now returns proper status, portability fix(Bruce)
inherently unordered (e.g. points and time intervals) and tests
involving those types are explicitly bracketed with "set geqo to
'off'" and "reset geqo".
-
+
The interpretation of array specifiers (the curly braces around atomic
values) appears to have changed sometime after the original regression
tests were generated. The current "./expected/*.out" files reflect
this new interpretation, which may not be correct!
-
+
The float8 regression test fails on at least some platforms. This is
due to differences in implementations of pow() and exp() and the
signaling mechanisms used for overflow and underflow conditions.
-
+
The "random" results in the random test should cause the "random" test
to be "failed", since the regression tests are evaluated using a
simple diff. However, "random" does not seem to produce random results
on my test machine (Linux/gcc/i686).
_________________________________________________________________
-
- Migration to version 6.1
-
+
+Migration to version 6.1
+
This migration requires a complete dump of the 6.0 database and a
restore of the database in 6.1.
-
+
Those migrating from earlier 1.* releases should first upgrade to 1.09
because the COPY output format was improved from the 1.02 release.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Bug Fixes
---------
packet length checking in library routines
@@ -3349,29 +3351,29 @@ c++ include file cleanup(Bruce)
warn about buggy flex(Bruce)
DG/UX, Ultrix, IRIX, AIX portability fixes
_________________________________________________________________
-
+
Release 6.0
-
+
Release date: 1997-01-29
-
+
A dump/restore is required for those wishing to migrate data from
previous releases of PostgreSQL.
_________________________________________________________________
-
- Migration from version 1.09 to version 6.0
-
+
+Migration from version 1.09 to version 6.0
+
This migration requires a complete dump of the 1.09 database and a
restore of the database in 6.0.
_________________________________________________________________
-
- Migration from pre-1.09 to version 6.0
-
+
+Migration from pre-1.09 to version 6.0
+
Those migrating from earlier 1.* releases should first upgrade to 1.09
because the COPY output format was improved from the 1.02 release.
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Bug Fixes
---------
ALTER TABLE bug - running postgress process needs to re-read table definition
@@ -3478,33 +3480,33 @@ Restructured object file generation/location(Bryan, Marc)
Restructured port-specific file locations(Bryan, Marc)
Unused/uninialized variables corrected
_________________________________________________________________
-
+
Release 1.09
-
+
Release date: 1996-11-04
-
+
Sorry, we didn't keep track of changes from 1.02 to 1.09. Some of the
changes listed in 6.0 were actually included in the 1.02.1 to 1.09
releases.
_________________________________________________________________
-
+
Release 1.02
-
+
Release date: 1996-08-01
_________________________________________________________________
-
- Migration from version 1.02 to version 1.02.1
-
+
+Migration from version 1.02 to version 1.02.1
+
Here is a new migration file for 1.02.1. It includes the 'copy' change
and a script to convert old ASCII files.
-
+
Note: The following notes are for the benefit of users who want to
migrate databases from Postgres95 1.01 and 1.02 to Postgres95
1.02.1.
-
+
If you are starting afresh with Postgres95 1.02.1 and do not need
to migrate old databases, you do not need to read any further.
-
+
In order to upgrade older Postgres95 version 1.01 or 1.02 databases to
version 1.02.1, the following steps are required:
1. Start up a new 1.02.1 postmaster
@@ -3520,9 +3522,9 @@ Unused/uninialized variables corrected
the last two statements in the file because they are already
present in 1.02. This is not a cause for concern.
_________________________________________________________________
-
- Dump/Reload Procedure
-
+
+Dump/Reload Procedure
+
If you are trying to reload a pg_dump or text-mode, copy tablename to
stdout generated with a previous version, you will need to run the
attached "sed" script on the ASCII file before loading it into the
@@ -3544,9 +3546,9 @@ eq);
create operator !~* (leftarg = varchar, rightarg = text, procedure = texticrege
xne);
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Source code maintenance and development
* worldwide team of volunteers
* the source tree now in CVS at ftp.ki.net
@@ -3573,20 +3575,20 @@ New Ports
* added BSD/OS 2.1 port
* added DG/UX port
_________________________________________________________________
-
+
Release 1.01
-
+
Release date: 1996-02-23
_________________________________________________________________
-
- Migration from version 1.0 to version 1.01
-
+
+Migration from version 1.0 to version 1.01
+
The following notes are for the benefit of users who want to migrate
databases from Postgres95 1.0 to Postgres95 1.01.
-
+
If you are starting afresh with Postgres95 1.01 and do not need to
migrate old databases, you do not need to read any further.
-
+
In order to Postgres95 version 1.01 with databases created with
Postgres95 version 1.0, the following steps are required:
1. Set the definition of NAMEDATALEN in "src/Makefile.global" to 16
@@ -3668,9 +3670,9 @@ create operator ~* (leftarg = text, rightarg = text, procedure = texticregexeq)
create operator !~* (leftarg = text, rightarg = text, procedure = texticregexne
);
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Incompatibilities:
* 1.01 is backwards compatible with 1.0 database provided the user
follow the steps outlined in the MIGRATION_from_1.0_to_1.01 file.
@@ -3704,14 +3706,14 @@ Bug fixes:
* psql now returns non-zero status on errors when using -c
* applied public patches 1-14
_________________________________________________________________
-
+
Release 1.0
-
+
Release date: 1995-09-05
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Copyright change:
* The copyright of Postgres 1.0 has been loosened to be freely modifiable
and modifiable for any purpose. Please read the COPYRIGHT file.
@@ -3752,14 +3754,14 @@ Bug fixes:
* btrees with multiple index never worked, now we tell you they don't
work when you try to use them
_________________________________________________________________
-
+
Postgres95 Release 0.03
-
+
Release date: 1995-07-21
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Incompatible changes:
* BETA-0.3 IS INCOMPATIBLE WITH DATABASES CREATED WITH PREVIOUS VERSIONS
(due to system catalog changes and indexing structure changes).
@@ -3866,14 +3868,14 @@ New utilities:
New documentation:
* the user manual has been revised and libpq documentation added.
_________________________________________________________________
-
+
Postgres95 Release 0.02
-
+
Release date: 1995-05-25
_________________________________________________________________
-
- Changes
-
+
+Changes
+
Incompatible changes:
* The SQL statement for creating a database is 'CREATE DATABASE' instead
of 'CREATEDB'. Similarly, dropping a database is 'DROP DATABASE' instead
@@ -3908,9 +3910,9 @@ The following bugs have been fixed in postgres95-beta-0.02:
* CREATE TYPE doesn't accept 'variable' as the internallength
* wrong result using more than 1 aggregate in a SELECT
_________________________________________________________________
-
+
Postgres95 Release 0.01
-
+
Release date: 1995-05-01
-
+
Initial release.
diff --git a/INSTALL b/INSTALL
index 1830f17d225..afb9f5da186 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,807 +1,886 @@
- PostgreSQL Installation Instructions
-
- This document describes the installation of PostgreSQL from the source
- code distribution.
- _________________________________________________________________
-
- Short Version
-
-./configure
-gmake
-su
-gmake install
-adduser postgres
-mkdir /usr/local/pgsql/data
-chown postgres /usr/local/pgsql/data
-su - postgres
-/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
-/usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data >logfile 2>&1 &
-/usr/local/pgsql/bin/createdb test
-/usr/local/pgsql/bin/psql test
-
- The long version is the rest of this document.
- _________________________________________________________________
-
- Requirements
-
- In general, a modern Unix-compatible platform should be able to run
- PostgreSQL. The platforms that had received specific testing at the
- time of release are listed in the section called Supported Platforms
- below. In the "doc" subdirectory of the distribution there are several
- platform-specific FAQ documents you might wish to consult if you are
- having trouble.
-
- The following software packages are required for building PostgreSQL:
-
- * GNU make is required; other make programs will *not* work. GNU
- make is often installed under the name "gmake"; this document will
- always refer to it by that name. (On some systems GNU make is the
- default tool with the name "make".) To test for GNU make enter
-gmake --version
- It is recommended to use version 3.76.1 or later.
- * You need an ISO/ANSI C compiler. Recent versions of GCC are
- recommendable, but PostgreSQL is known to build with a wide
- variety of compilers from different vendors.
- * gzip is needed to unpack the distribution in the first place. If
- you are reading this, you probably already got past that hurdle.
- * The GNU Readline library (for comfortable line editing and command
- history retrieval) will be used by default. If you don't want to
- use it then you must specify the "--without-readline" option for
- "configure". (On NetBSD, the "libedit" library is
- readline-compatible and is used if "libreadline" is not found.)
- * To build on Windows NT or Windows 2000 you need the Cygwin and
- cygipc packages. See the file "doc/FAQ_MSWIN" for details.
-
- The following packages are optional. They are not required in the
- default configuration, but they are needed when certain build options
- are enabled, as explained below.
-
- * To build the server programming language PL/Perl you need a full
- Perl installation, including the "libperl" library and the header
- files. Since PL/Perl will be a shared library, the "libperl"
- library must be a shared library also on most platforms. This
- appears to be the default in recent Perl versions, but it was not
- in earlier versions, and in general it is the choice of whomever
- installed Perl at your site.
- If you don't have the shared library but you need one, a message
- like this will appear during the build to point out this fact:
-*** Cannot build PL/Perl because libperl is not a shared library.
-*** You might have to rebuild your Perl installation. Refer to
-*** the documentation for details.
- (If you don't follow the on-screen output you will merely notice
- that the PL/Perl library object, "plperl.so" or similar, will not
- be installed.) If you see this, you will have to rebuild and
- install Perl manually to be able to build PL/Perl. During the
- configuration process for Perl, request a shared library.
- * To build the Python interface module or the PL/Python server
- programming language, you need a Python installation, including
- the header files. Since PL/Python will be a shared library, the
- "libpython" library must be a shared library also on most
- platforms. This is not the case in a default Python installation.
- If after building and installing you have a file called
- "plpython.so" (possibly a different extension), then everything
- went well. Otherwise you should have seen a notice like this
- flying by:
-*** Cannot build PL/Python because libpython is not a shared library.
-*** You might have to rebuild your Python installation. Refer to
-*** the documentation for details.
- That means you have to rebuild (part of) your Python installation
- to supply this shared library.
- The catch is that the Python distribution or the Python
- maintainers do not provide any direct way to do this. The closest
- thing we can offer you is the information in Python FAQ 3.30. On
- some operating systems you don't really have to build a shared
- library, but then you will have to convince the PostgreSQL build
- system of this. Consult the "Makefile" in the "src/pl/plpython"
- directory for details.
- * If you want to build Tcl or Tk components (clients and the PL/Tcl
- language) you of course need a Tcl installation.
- * To build the JDBC driver, you need Ant 1.5 or higher and a JDK.
- Ant is a special tool for building Java-based packages. It can be
- downloaded from the Ant web site.
- If you have several Java compilers installed, it depends on the
- Ant configuration which one gets used. Precompiled Ant
- distributions are typically set up to read a file ".antrc" in the
- current user's home directory for configuration. For example, to
- use a different JDK than the default, this may work:
-JAVA_HOME=/usr/local/sun-jdk1.3
-JAVACMD=$JAVA_HOME/bin/java
-
- Note: Do not try to build the driver by calling "ant" or even
- "javac" directly. This will not work. Run "gmake" normally as
- described below.
- * To enable Native Language Support (NLS), that is, the ability to
- display a program's messages in a language other than English, you
- need an implementation of the Gettext API. Some operating systems
- have this built-in (e.g., Linux, NetBSD, Solaris), for other
- systems you can download an add-on package from here:
- http://www.postgresql.org/~petere/gettext.html. If you are using
- the gettext implementation in the GNU C library then you will
- additionally need the GNU Gettext package for some utility
- programs. For any of the other implementations you will not need
- it.
- * Kerberos, OpenSSL, or PAM, if you want to support authentication
- using these services.
-
- If you are build from a CVS tree instead of using a released source
- package, or if you want to do development, you also need the following
- packages:
-
- * Flex and Bison are needed to build a CVS checkout or if you
- changed the actual scanner and parser definition files. If you
- need them, be sure to get Flex 2.5.4 or later and Bison 1.50 or
- later. Other yacc programs can sometimes be used, but doing so
- requires extra effort and is not recommended. Other lex programs
- will definitely not work.
-
- If you need to get a GNU package, you can find it at your local GNU
- mirror site (see http://www.gnu.org/order/ftp.html for a list) or at
- ftp://ftp.gnu.org/gnu/.
-
- Also check that you have sufficient disk space. You will need about 65
- MB for the source tree during compilation and about 15 MB for the
- installation directory. An empty database cluster takes about 25 MB,
- databases take about five times the amount of space that a flat text
- file with the same data would take. If you are going to run the
- regression tests you will temporarily need up to an extra 90 MB. Use
- the "df" command to check for disk space.
- _________________________________________________________________
-
- If You Are Upgrading
-
- The internal data storage format changes with new releases of
- PostgreSQL. Therefore, if you are upgrading an existing installation
- that does not have a version number "7.3.x", you must back up and
- restore your data as shown here. These instructions assume that your
- existing installation is under the "/usr/local/pgsql" directory, and
- that the data area is in "/usr/local/pgsql/data". Substitute your
- paths appropriately.
- 1. Make sure that your database is not updated during or after the
- backup. This does not affect the integrity of the backup, but the
- changed data would of course not be included. If necessary, edit
- the permissions in the file "/usr/local/pgsql/data/pg_hba.conf"
- (or equivalent) to disallow access from everyone except you.
- 2. To back up your database installation, type:
-pg_dumpall > outputfile
- If you need to preserve OIDs (such as when using them as foreign
- keys), then use the "-o" option when running "pg_dumpall".
- "pg_dumpall" does not save large objects. Check the
- Administrator's Guide if you need to do this.
- To make the backup, you can use the "pg_dumpall" command from the
- version you are currently running. For best results, however, try
- to use the "pg_dumpall" command from PostgreSQL 7.3.1, since this
- version contains bug fixes and improvements over older versions.
- While this advice might seem idiosyncratic since you haven't
- installed the new version yet, it is advisable to follow it if you
- plan to install the new version in parallel with the old version.
- In that case you can complete the installation normally and
- transfer the data later. This will also decrease the downtime.
- 3. If you are installing the new version at the same location as the
- old one then shut down the old server, at the latest before you
- install the new files:
-kill -INT `cat /usr/local/pgsql/data/postmaster.pid`
- Versions prior to 7.0 do not have this "postmaster.pid" file. If
- you are using such a version you must find out the process id of
- the server yourself, for example by typing "ps ax | grep
- postmaster", and supply it to the "kill" command.
- On systems that have PostgreSQL started at boot time, there is
- probably a start-up file that will accomplish the same thing. For
- example, on a Red Hat Linux system one might find that
-/etc/rc.d/init.d/postgresql stop
- works. Another possibility is "pg_ctl stop".
- 4. If you are installing in the same place as the old version then it
- is also a good idea to move the old installation out of the way,
- in case you have trouble and need to revert to it. Use a command
- like this:
-mv /usr/local/pgsql /usr/local/pgsql.old
-
- After you have installed PostgreSQL 7.3.1, create a new database
- directory and start the new server. Remember that you must execute
- these commands while logged in to the special database user account
- (which you already have if you are upgrading).
-/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
-/usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data
-
- Finally, restore your data with
-/usr/local/pgsql/bin/psql -d template1 -f outputfile
-
- using the *new* psql.
-
- These topics are discussed at length in the Administrator's Guide,
- which you are encouraged to read in any case.
- _________________________________________________________________
-
- Installation Procedure
-
- 1. Configuration
- The first step of the installation procedure is to configure the
- source tree for your system and choose the options you would like.
- This is done by running the "configure" script. For a default
- installation simply enter
-./configure
- This script will run a number of tests to guess values for various
- system dependent variables and detect some quirks of your
- operating system, and finally will create several files in the
- build tree to record what it found. (You can also run "configure"
- in a directory outside the source tree if you want to keep the
- build directory separate.)
- The default configuration will build the server and utilities, as
- well as all client applications and interfaces that require only a
- C compiler. All files will be installed under "/usr/local/pgsql"
- by default.
- You can customize the build and installation process by supplying
- one or more of the following command line options to "configure":
-
+ PostgreSQL Installation Instructions
+
+This document describes the installation of PostgreSQL from the source code
+distribution.
+
+-------------------------------------------------------------------------------
+
+ Short Version
+
+ ./configure
+ gmake
+ su
+ gmake install
+ adduser postgres
+ mkdir /usr/local/pgsql/data
+ chown postgres /usr/local/pgsql/data
+ su - postgres
+ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
+ /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data >logfile 2>&1 &
+ /usr/local/pgsql/bin/createdb test
+ /usr/local/pgsql/bin/psql test
+
+The long version is the rest of this document.
+
+-------------------------------------------------------------------------------
+
+ Requirements
+
+In general, a modern Unix-compatible platform should be able to run PostgreSQL.
+The platforms that had received specific testing at the time of release are
+listed in the Section called Supported Platforms below. In the "doc"
+subdirectory of the distribution there are several platform-specific FAQ
+documents you might wish to consult if you are having trouble.
+The following software packages are required for building PostgreSQL:
+
+ * GNU make is required; other make programs will *not* work. GNU make is
+ often installed under the name "gmake"; this document will always refer
+ to it by that name. (On some systems GNU make is the default tool with
+ the name "make".) To test for GNU make enter
+
+ gmake --version
+
+ It is recommended to use version 3.76.1 or later.
+
+ * You need an ISO/ANSI C compiler. Recent versions of GCC are
+ recommendable, but PostgreSQL is known to build with a wide variety of
+ compilers from different vendors.
+
+ * gzip is needed to unpack the distribution in the first place. If you are
+ reading this, you probably already got past that hurdle.
+
+ * The GNU Readline library (for comfortable line editing and command
+ history retrieval) will be used by default. If you don't want to use it
+ then you must specify the "--without-readline" option for "configure".
+ (On NetBSD, the "libedit" library is readline-compatible and is used if
+ "libreadline" is not found.)
+
+ * To build on Windows NT or Windows 2000 you need the Cygwin and cygipc
+ packages. See the file "doc/FAQ_MSWIN" for details.
+
+The following packages are optional. They are not required in the default
+configuration, but they are needed when certain build options are enabled, as
+explained below.
+
+ * To build the server programming language PL/Perl you need a full Perl
+ installation, including the "libperl" library and the header files. Since
+ PL/Perl will be a shared library, the "libperl" library must be a shared
+ library also on most platforms. This appears to be the default in recent
+ Perl versions, but it was not in earlier versions, and in general it is
+ the choice of whomever installed Perl at your site.
+ If you don't have the shared library but you need one, a message like
+ this will appear during the build to point out this fact:
+
+ *** Cannot build PL/Perl because libperl is not a shared library.
+ *** You might have to rebuild your Perl installation. Refer to
+ *** the documentation for details.
+
+ (If you don't follow the on-screen output you will merely notice that the
+ PL/Perl library object, "plperl.so" or similar, will not be installed.)
+ If you see this, you will have to rebuild and install Perl manually to be
+ able to build PL/Perl. During the configuration process for Perl, request
+ a shared library.
+
+ * To build the Python interface module or the PL/Python server programming
+ language, you need a Python installation, including the header files.
+ Since PL/Python will be a shared library, the "libpython" library must be
+ a shared library also on most platforms. This is not the case in a
+ default Python installation.
+ If after building and installing you have a file called "plpython.so"
+ (possibly a different extension), then everything went well. Otherwise
+ you should have seen a notice like this flying by:
+
+ *** Cannot build PL/Python because libpython is not a shared library.
+ *** You might have to rebuild your Python installation. Refer to
+ *** the documentation for details.
+
+ That means you have to rebuild (part of) your Python installation to
+ supply this shared library.
+ The catch is that the Python distribution or the Python maintainers do
+ not provide any direct way to do this. The closest thing we can offer you
+ is the information in Python FAQ 3.30. On some operating systems you
+ don't really have to build a shared library, but then you will have to
+ convince the PostgreSQL build system of this. Consult the "Makefile" in
+ the "src/pl/plpython" directory for details.
+
+ * If you want to build Tcl or Tk components (clients and the PL/Tcl
+ language) you of course need a Tcl installation.
+
+ * To build the JDBC driver, you need Ant 1.5 or higher and a JDK. Ant is a
+ special tool for building Java-based packages. It can be downloaded from
+ the Ant web site.
+ If you have several Java compilers installed, it depends on the Ant
+ configuration which one gets used. Precompiled Ant distributions are
+ typically set up to read a file ".antrc" in the current user's home
+ directory for configuration. For example, to use a different JDK than the
+ default, this may work:
+
+ JAVA_HOME=/usr/local/sun-jdk1.3
+ JAVACMD=$JAVA_HOME/bin/java
+
+ Note: Do not try to build the driver by calling "ant" or even
+ "javac" directly. This will not work. Run "gmake" normally as
+ described below.
+
+ * To enable Native Language Support (NLS), that is, the ability to display
+ a program's messages in a language other than English, you need an
+ implementation of the Gettext API. Some operating systems have this
+ built-in (e.g., Linux, NetBSD, Solaris), for other systems you can
+ download an add-on package from here: http://www.postgresql.org/~petere/
+ gettext.html. If you are using the gettext implementation in the GNU C
+ library then you will additionally need the GNU Gettext package for some
+ utility programs. For any of the other implementations you will not need
+ it.
+
+ * Kerberos, OpenSSL, or PAM, if you want to support authentication using
+ these services.
+
+If you are build from a CVS tree instead of using a released source package, or
+if you want to do development, you also need the following packages:
+
+ * Flex and Bison are needed to build a CVS checkout or if you changed the
+ actual scanner and parser definition files. If you need them, be sure to
+ get Flex 2.5.4 or later and Bison 1.50 or later. Other yacc programs can
+ sometimes be used, but doing so requires extra effort and is not
+ recommended. Other lex programs will definitely not work.
+
+If you need to get a GNU package, you can find it at your local GNU mirror site
+(see http://www.gnu.org/order/ftp.html for a list) or at ftp://ftp.gnu.org/
+gnu/.
+Also check that you have sufficient disk space. You will need about 65 MB for
+the source tree during compilation and about 15 MB for the installation
+directory. An empty database cluster takes about 25 MB, databases take about
+five times the amount of space that a flat text file with the same data would
+take. If you are going to run the regression tests you will temporarily need up
+to an extra 90 MB. Use the "df" command to check for disk space.
+
+-------------------------------------------------------------------------------
+
+ If You Are Upgrading
+
+The internal data storage format changes with new releases of PostgreSQL.
+Therefore, if you are upgrading an existing installation that does not have a
+version number "7.3.x", you must back up and restore your data as shown here.
+These instructions assume that your existing installation is under the "/usr/
+local/pgsql" directory, and that the data area is in "/usr/local/pgsql/data".
+Substitute your paths appropriately.
+
+ 1. Make sure that your database is not updated during or after the backup.
+ This does not affect the integrity of the backup, but the changed data
+ would of course not be included. If necessary, edit the permissions in
+ the file "/usr/local/pgsql/data/pg_hba.conf" (or equivalent) to disallow
+ access from everyone except you.
+
+ 2. To back up your database installation, type:
+
+ pg_dumpall > outputfile
+
+ If you need to preserve OIDs (such as when using them as foreign keys),
+ then use the "-o" option when running "pg_dumpall".
+ "pg_dumpall" does not save large objects. Check the Administrator's Guide
+ if you need to do this.
+ To make the backup, you can use the "pg_dumpall" command from the version
+ you are currently running. For best results, however, try to use the
+ "pg_dumpall" command from PostgreSQL 7.3.1, since this version contains
+ bug fixes and improvements over older versions. While this advice might
+ seem idiosyncratic since you haven't installed the new version yet, it is
+ advisable to follow it if you plan to install the new version in parallel
+ with the old version. In that case you can complete the installation
+ normally and transfer the data later. This will also decrease the
+ downtime.
+
+ 3. If you are installing the new version at the same location as the old one
+ then shut down the old server, at the latest before you install the new
+ files:
+
+ kill -INT `cat /usr/local/pgsql/data/postmaster.pid`
+
+ Versions prior to 7.0 do not have this "postmaster.pid" file. If you are
+ using such a version you must find out the process id of the server
+ yourself, for example by typing "ps ax | grep postmaster", and supply it
+ to the "kill" command.
+ On systems that have PostgreSQL started at boot time, there is probably a
+ start-up file that will accomplish the same thing. For example, on a Red
+ Hat Linux system one might find that
+
+ /etc/rc.d/init.d/postgresql stop
+
+ works. Another possibility is "pg_ctl stop".
+
+ 4. If you are installing in the same place as the old version then it is
+ also a good idea to move the old installation out of the way, in case you
+ have trouble and need to revert to it. Use a command like this:
+
+ mv /usr/local/pgsql /usr/local/pgsql.old
+
+After you have installed PostgreSQL 7.3.1, create a new database directory and
+start the new server. Remember that you must execute these commands while
+logged in to the special database user account (which you already have if you
+are upgrading).
+
+ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
+ /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data
+
+Finally, restore your data with
+
+ /usr/local/pgsql/bin/psql -d template1 -f outputfile
+
+using the *new* psql.
+These topics are discussed at length in the Administrator's Guide, which you
+are encouraged to read in any case.
+
+-------------------------------------------------------------------------------
+
+ Installation Procedure
+
+ 1. Configuration
+ The first step of the installation procedure is to configure the source
+ tree for your system and choose the options you would like. This is done
+ by running the "configure" script. For a default installation simply
+ enter
+
+ ./configure
+
+ This script will run a number of tests to guess values for various system
+ dependent variables and detect some quirks of your operating system, and
+ finally will create several files in the build tree to record what it
+ found. (You can also run "configure" in a directory outside the source
+ tree if you want to keep the build directory separate.)
+ The default configuration will build the server and utilities, as well as
+ all client applications and interfaces that require only a C compiler.
+ All files will be installed under "/usr/local/pgsql" by default.
+ You can customize the build and installation process by supplying one or
+ more of the following command line options to "configure":
+
--prefix=PREFIX
- Install all files under the directory "PREFIX" instead of
- "/usr/local/pgsql". The actual files will be installed
- into various subdirectories; no files will ever be
- installed directly into the "PREFIX" directory.
-
- If you have special needs, you can also customize the
- individual subdirectories with the following options.
-
+
+ Install all files under the directory "PREFIX" instead of "/usr/
+ local/pgsql". The actual files will be installed into various
+ subdirectories; no files will ever be installed directly into the
+ "PREFIX" directory.
+ If you have special needs, you can also customize the individual
+ subdirectories with the following options.
+
--exec-prefix=EXEC-PREFIX
- You can install architecture-dependent files under a
- different prefix, "EXEC-PREFIX", than what "PREFIX" was
- set to. This can be useful to share
- architecture-independent files between hosts. If you omit
- this, then "EXEC-PREFIX" is set equal to "PREFIX" and
- both architecture-dependent and independent files will be
- installed under the same tree, which is probably what you
- want.
-
+
+ You can install architecture-dependent files under a different
+ prefix, "EXEC-PREFIX", than what "PREFIX" was set to. This can be
+ useful to share architecture-independent files between hosts. If
+ you omit this, then "EXEC-PREFIX" is set equal to "PREFIX" and both
+ architecture-dependent and independent files will be installed
+ under the same tree, which is probably what you want.
+
--bindir=DIRECTORY
- Specifies the directory for executable programs. The
- default is "EXEC-PREFIX/bin", which normally means
- "/usr/local/pgsql/bin".
-
+
+ Specifies the directory for executable programs. The default is
+ "EXEC-PREFIX/bin", which normally means "/usr/local/pgsql/bin".
+
--datadir=DIRECTORY
- Sets the directory for read-only data files used by the
- installed programs. The default is "PREFIX/share". Note
- that this has nothing to do with where your database
- files will be placed.
-
+
+ Sets the directory for read-only data files used by the installed
+ programs. The default is "PREFIX/share". Note that this has nothing
+ to do with where your database files will be placed.
+
--sysconfdir=DIRECTORY
- The directory for various configuration files,
- "PREFIX/etc" by default.
-
+
+ The directory for various configuration files, "PREFIX/etc" by
+ default.
+
--libdir=DIRECTORY
- The location to install libraries and dynamically
- loadable modules. The default is "EXEC-PREFIX/lib".
-
+
+ The location to install libraries and dynamically loadable modules.
+ The default is "EXEC-PREFIX/lib".
+
--includedir=DIRECTORY
- The directory for installing C and C++ header files. The
- default is "PREFIX/include".
-
+
+ The directory for installing C and C++ header files. The default is
+ "PREFIX/include".
+
--docdir=DIRECTORY
- Documentation files, except "man" pages, will be
- installed into this directory. The default is
- "PREFIX/doc".
-
+
+ Documentation files, except "man" pages, will be installed into
+ this directory. The default is "PREFIX/doc".
+
--mandir=DIRECTORY
- The man pages that come with PostgreSQL will be installed
- under this directory, in their respective "manx"
- subdirectories. The default is "PREFIX/man".
-
- Note: Care has been taken to make it possible to install PostgreSQL
- into shared installation locations (such as "/usr/local/include")
- without interfering with the namespace of the rest of the system.
- First, the string "/postgresql" is automatically appended to
- datadir, sysconfdir, and docdir, unless the fully expanded
- directory name already contains the string "postgres" or "pgsql".
- For example, if you choose "/usr/local" as prefix, the
- documentation will be installed in "/usr/local/doc/postgresql", but
- if the prefix is "/opt/postgres", then it will be in
- "/opt/postgres/doc". The public C header files of the client
- interfaces are installed into includedir and are namespace-clean.
- The internal header files and the server header files are installed
- into private directories under includedir. See the Programmer's
- Guide for information about how to get at the header files for each
- interface. Finally, a private subdirectory will also be created, if
- appropriate, under libdir for dynamically loadable modules.
-
+
+ The man pages that come with PostgreSQL will be installed under
+ this directory, in their respective "manx" subdirectories. The
+ default is "PREFIX/man".
+ Note: Care has been taken to make it possible to install
+ PostgreSQL into shared installation locations (such as "/usr/
+ local/include") without interfering with the namespace of the
+ rest of the system. First, the string "/postgresql" is
+ automatically appended to datadir, sysconfdir, and docdir,
+ unless the fully expanded directory name already contains the
+ string "postgres" or "pgsql". For example, if you choose "/usr/
+ local" as prefix, the documentation will be installed in "/usr/
+ local/doc/postgresql", but if the prefix is "/opt/postgres",
+ then it will be in "/opt/postgres/doc". The public C header
+ files of the client interfaces are installed into includedir
+ and are namespace-clean. The internal header files and the
+ server header files are installed into private directories
+ under includedir. See the Programmer's Guide for information
+ about how to get at the header files for each interface.
+ Finally, a private subdirectory will also be created, if
+ appropriate, under libdir for dynamically loadable modules.
+
--with-includes=DIRECTORIES
- "DIRECTORIES" is a colon-separated list of directories
- that will be added to the list the compiler searches for
- header files. If you have optional packages (such as GNU
- Readline) installed in a non-standard location, you have
- to use this option and probably also the corresponding
- "--with-libraries" option.
-
- Example:
- --with-includes=/opt/gnu/include:/usr/sup/include.
-
+
+ "DIRECTORIES" is a colon-separated list of directories that will be
+ added to the list the compiler searches for header files. If you
+ have optional packages (such as GNU Readline) installed in a non-
+ standard location, you have to use this option and probably also
+ the corresponding "--with-libraries" option.
+ Example: --with-includes=/opt/gnu/include:/usr/sup/include.
+
--with-libraries=DIRECTORIES
- "DIRECTORIES" is a colon-separated list of directories to
- search for libraries. You will probably have to use this
- option (and the corresponding "--with-includes" option)
- if you have packages installed in non-standard locations.
-
- Example: --with-libraries=/opt/gnu/lib:/usr/sup/lib.
-
+
+ "DIRECTORIES" is a colon-separated list of directories to search
+ for libraries. You will probably have to use this option (and the
+ corresponding "--with-includes" option) if you have packages
+ installed in non-standard locations.
+ Example: --with-libraries=/opt/gnu/lib:/usr/sup/lib.
+
--enable-recode
- Enables single-byte character set recode support. See the
- Administrator's Guide about this feature. Note that a
- more general form of character set conversion is
- supported in the default configuration; this feature is
- obsolete.
-
+
+ Enables single-byte character set recode support. See the
+ Administrator's Guide about this feature. Note that a more general
+ form of character set conversion is supported in the default
+ configuration; this feature is obsolete.
+
--enable-nls[=LANGUAGES]
- Enables Native Language Support (NLS), that is, the
- ability to display a program's messages in a language
- other than English. "LANGUAGES" is a space separated list
- of codes of the languages that you want supported, for
- example --enable-nls='de fr'. (The intersection between
- your list and the set of actually provided translations
- will be computed automatically.) If you do not specify a
- list, then all available translations are installed.
-
- To use this option, you will need an implementation of
- the gettext API; see above.
-
+
+ Enables Native Language Support (NLS), that is, the ability to
+ display a program's messages in a language other than English.
+ "LANGUAGES" is a space separated list of codes of the languages
+ that you want supported, for example --enable-nls='de fr'. (The
+ intersection between your list and the set of actually provided
+ translations will be computed automatically.) If you do not specify
+ a list, then all available translations are installed.
+ To use this option, you will need an implementation of the gettext
+ API; see above.
+
--with-pgport=NUMBER
- Set "NUMBER" as the default port number for server and
- clients. The default is 5432. The port can always be
- changed later on, but if you specify it here then both
- server and clients will have the same default compiled
- in, which can be very convenient. Usually the only good
- reason to select a non-default value is if you intend to
- run multiple PostgreSQL servers on the same machine.
-
+
+ Set "NUMBER" as the default port number for server and clients. The
+ default is 5432. The port can always be changed later on, but if
+ you specify it here then both server and clients will have the same
+ default compiled in, which can be very convenient. Usually the only
+ good reason to select a non-default value is if you intend to run
+ multiple PostgreSQL servers on the same machine.
+
--with-perl
- Build the PL/Perl server-side language.
-
+
+ Build the PL/Perl server-side language.
+
--with-python
- Build the Python interface module and the PL/Python
- server-side language. You need to have root access to be
- able to install the Python module at its default place
- ("/usr/lib/pythonx.y").
-
+
+ Build the Python interface module and the PL/Python server-side
+ language. You need to have root access to be able to install the
+ Python module at its default place ("/usr/lib/pythonx.y").
+
--with-tcl
- Build components that require Tcl/Tk, which are libpgtcl,
- pgtclsh, pgtksh, and PL/Tcl. But see below about
- "--without-tk".
-
+
+ Build components that require Tcl/Tk, which are libpgtcl, pgtclsh,
+ pgtksh, and PL/Tcl. But see below about "--without-tk".
+
--without-tk
- If you specify "--with-tcl" and this option, then the
- program that requires Tk (pgtksh) will be excluded.
-
+
+ If you specify "--with-tcl" and this option, then the program that
+ requires Tk (pgtksh) will be excluded.
+
--with-tclconfig=DIRECTORY, --with-tkconfig=DIRECTORY
- Tcl/Tk installs the files "tclConfig.sh" and
- "tkConfig.sh", which contain configuration information
- needed to build modules interfacing to Tcl or Tk. These
- files are normally found automatically at their
- well-known locations, but if you want to use a different
- version of Tcl or Tk you can specify the directory in
- which to find them.
-
+
+ Tcl/Tk installs the files "tclConfig.sh" and "tkConfig.sh", which
+ contain configuration information needed to build modules
+ interfacing to Tcl or Tk. These files are normally found
+ automatically at their well-known locations, but if you want to use
+ a different version of Tcl or Tk you can specify the directory in
+ which to find them.
+
--with-java
- Build the JDBC driver and associated Java packages.
-
+
+ Build the JDBC driver and associated Java packages.
+
--with-krb4[=DIRECTORY], --with-krb5[=DIRECTORY]
- Build with support for Kerberos authentication. You can
- use either Kerberos version 4 or 5, but not both. The
- "DIRECTORY" argument specifies the root directory of the
- Kerberos installation; "/usr/athena" is assumed as
- default. If the relevant header files and libraries are
- not under a common parent directory, then you must use
- the "--with-includes" and "--with-libraries" options in
- addition to this option. If, on the other hand, the
- required files are in a location that is searched by
- default (e.g., "/usr/lib"), then you can leave off the
- argument.
-
- "configure" will check for the required header files and
- libraries to make sure that your Kerberos installation is
- sufficient before proceeding.
-
+
+ Build with support for Kerberos authentication. You can use either
+ Kerberos version 4 or 5, but not both. The "DIRECTORY" argument
+ specifies the root directory of the Kerberos installation; "/usr/
+ athena" is assumed as default. If the relevant header files and
+ libraries are not under a common parent directory, then you must
+ use the "--with-includes" and "--with-libraries" options in
+ addition to this option. If, on the other hand, the required files
+ are in a location that is searched by default (e.g., "/usr/lib"),
+ then you can leave off the argument.
+ "configure" will check for the required header files and libraries
+ to make sure that your Kerberos installation is sufficient before
+ proceeding.
+
--with-krb-srvnam=NAME
- The name of the Kerberos service principal. postgres is
- the default. There's probably no reason to change this.
-
+
+ The name of the Kerberos service principal. postgres is the
+ default. There's probably no reason to change this.
+
--with-openssl[=DIRECTORY]
- Build with support for SSL (encrypted) connections. This
- requires the OpenSSL package to be installed. The
- "DIRECTORY" argument specifies the root directory of the
- OpenSSL installation; the default is "/usr/local/ssl".
-
- "configure" will check for the required header files and
- libraries to make sure that your OpenSSL installation is
- sufficient before proceeding.
-
+
+ Build with support for SSL (encrypted) connections. This requires
+ the OpenSSL package to be installed. The "DIRECTORY" argument
+ specifies the root directory of the OpenSSL installation; the
+ default is "/usr/local/ssl".
+ "configure" will check for the required header files and libraries
+ to make sure that your OpenSSL installation is sufficient before
+ proceeding.
+
--with-pam
- Build with PAM (Pluggable Authentication Modules)
- support.
-
+
+ Build with PAM (Pluggable Authentication Modules) support.
+
--without-readline
- Prevents the use of the Readline library. This disables
- command-line editing and history in psql, so it is not
- recommended.
-
+
+ Prevents the use of the Readline library. This disables command-
+ line editing and history in psql, so it is not recommended.
+
--without-zlib
- Prevents the use of the Zlib library. This disables
- compression support in pg_dump. This option is only
- intended for those rare systems where this library is not
- available.
-
+
+ Prevents the use of the Zlib library. This disables compression
+ support in pg_dump. This option is only intended for those rare
+ systems where this library is not available.
+
--enable-debug
- Compiles all programs and libraries with debugging
- symbols. This means that you can run the programs through
- a debugger to analyze problems. This enlarges the size of
- the installed executables considerably, and on non-GCC
- compilers it usually also disables compiler optimization,
- causing slowdowns. However, having the symbols available
- is extremely helpful for dealing with any problems that
- may arise. Currently, this option is recommended for
- production installations only if you use GCC. But you
- should always have it on if you are doing development
- work or running a beta version.
-
+
+ Compiles all programs and libraries with debugging symbols. This
+ means that you can run the programs through a debugger to analyze
+ problems. This enlarges the size of the installed executables
+ considerably, and on non-GCC compilers it usually also disables
+ compiler optimization, causing slowdowns. However, having the
+ symbols available is extremely helpful for dealing with any
+ problems that may arise. Currently, this option is recommended for
+ production installations only if you use GCC. But you should always
+ have it on if you are doing development work or running a beta
+ version.
+
--enable-cassert
- Enables assertion checks in the server, which test for
- many "can't happen" conditions. This is invaluable for
- code development purposes, but the tests slow things down
- a little. Also, having the tests turned on won't
- necessarily enhance the stability of your server! The
- assertion checks are not categorized for severity, and so
- what might be a relatively harmless bug will still lead
- to server restarts if it triggers an assertion failure.
- Currently, this option is not recommended for production
- use, but you should have it on for development work or
- when running a beta version.
-
+
+ Enables assertion checks in the server, which test for many "can't
+ happen" conditions. This is invaluable for code development
+ purposes, but the tests slow things down a little. Also, having the
+ tests turned on won't necessarily enhance the stability of your
+ server! The assertion checks are not categorized for severity, and
+ so what might be a relatively harmless bug will still lead to
+ server restarts if it triggers an assertion failure. Currently,
+ this option is not recommended for production use, but you should
+ have it on for development work or when running a beta version.
+
--enable-depend
- Enables automatic dependency tracking. With this option,
- the makefiles are set up so that all affected object
- files will be rebuilt when any header file is changed.
- This is useful if you are doing development work, but is
- just wasted overhead if you intend only to compile once
- and install. At present, this option will work only if
- you use GCC.
-
- If you prefer a C compiler different from the one "configure"
- picks then you can set the environment variable CC to the program
- of your choice. By default, "configure" will pick "gcc" unless
- this is inappropriate for the platform. Similarly, you can
- override the default compiler flags with the CFLAGS variable.
- You can specify environment variables on the "configure" command
- line, for example:
-./configure CC=/opt/bin/gcc CFLAGS='-O2 -pipe'
- 2. Build
- To start the build, type
-gmake
- (Remember to use GNU make.) The build may take anywhere from 5
- minutes to half an hour depending on your hardware. The last line
- displayed should be
-All of PostgreSQL is successfully made. Ready to install.
- 3. Regression Tests
- If you want to test the newly built server before you install it,
- you can run the regression tests at this point. The regression
- tests are a test suite to verify that PostgreSQL runs on your
- machine in the way the developers expected it to. Type
-gmake check
- (This won't work as root; do it as an unprivileged user.) It is
- possible that some tests fail, due to differences in error message
- wording or floating point results. The file
- "src/test/regress/README" and the Administrator's Guide contain
- detailed information about interpreting the test results. You can
- repeat this test at any later time by issuing the same command.
- 4. Installing The Files
-
- Note: If you are upgrading an existing system and are going to
- install the new files over the old ones, then you should have
- backed up your data and shut down the old server by now, as
- explained in the section called If You Are Upgrading above.
- To install PostgreSQL enter
-gmake install
- This will install files into the directories that were specified
- in step 1. Make sure that you have appropriate permissions to
- write into that area. Normally you need to do this step as root.
- Alternatively, you could create the target directories in advance
- and arrange for appropriate permissions to be granted.
- You can use gmake install-strip instead of gmake install to strip
- the executable files and libraries as they are installed. This
- will save some space. If you built with debugging support,
- stripping will effectively remove the debugging support, so it
- should only be done if debugging is no longer needed.
- install-strip tries to do a reasonable job saving space, but it
- does not have perfect knowledge of how to strip every unneeded
- byte from an executable file, so if you want to save all the disk
- space you possibly can, you will have to do manual work.
- If you built the Python interfaces and you were not the root user
- when you executed the above command then that part of the
- installation probably failed. In that case you should become the
- root user and then do
-gmake -C src/interfaces/python install
- If you do not have superuser access you are on your own: you can
- still take the required files and place them in other directories
- where Python can find them, but how to do that is left as an
- exercise.
- The standard installation provides only the header files needed
- for client application development. If you plan to do any
- server-side program development (such as custom functions or data
- types written in C), then you may want to install the entire
- PostgreSQL include tree into your target include directory. To do
- that, enter
-gmake install-all-headers
- This adds a megabyte or two to the installation footprint, and is
- only useful if you don't plan to keep the whole source tree around
- for reference. (If you do, you can just use the source's include
- directory when building server-side software.)
- Client-only installation: If you want to install only the client
- applications and interface libraries, then you can use these
- commands:
-gmake -C src/bin install
-gmake -C src/include install
-gmake -C src/interfaces install
-gmake -C doc install
-
- Uninstallation: To undo the installation use the command "gmake
- uninstall". However, this will not remove any created directories.
-
- Cleaning: After the installation you can make room by removing the
- built files from the source tree with the command "gmake clean". This
- will preserve the files made by the configure program, so that you can
- rebuild everything with "gmake" later on. To reset the source tree to
- the state in which it was distributed, use "gmake distclean". If you
- are going to build for several platforms from the same source tree you
- must do this and re-configure for each build.
-
- If you perform a build and then discover that your configure options
- were wrong, or if you change anything that configure investigates (for
- example, software upgrades), then it's a good idea to do "gmake
- distclean" before reconfiguring and rebuilding. Without this, your
- changes in configuration choices may not propagate everywhere they
- need to.
- _________________________________________________________________
-
- Post-Installation Setup
-
- Shared Libraries
-
- On some systems that have shared libraries (which most systems do) you
- need to tell your system how to find the newly installed shared
- libraries. The systems on which this is *not* necessary include
- BSD/OS, FreeBSD, HP-UX, IRIX, Linux, NetBSD, OpenBSD, Tru64 UNIX
- (formerly Digital UNIX), and Solaris.
-
- The method to set the shared library search path varies between
- platforms, but the most widely usable method is to set the environment
- variable LD_LIBRARY_PATH like so: In Bourne shells ("sh", "ksh",
- "bash", "zsh")
-LD_LIBRARY_PATH=/usr/local/pgsql/lib
-export LD_LIBRARY_PATH
-
- or in "csh" or "tcsh"
-setenv LD_LIBRARY_PATH /usr/local/pgsql/lib
-
- Replace /usr/local/pgsql/lib with whatever you set "--libdir" to in
- step 1. You should put these commands into a shell start-up file such
- as "/etc/profile" or "~/.bash_profile". Some good information about
- the caveats associated with this method can be found at
- http://www.visi.com/~barr/ldpath.html.
-
- On some systems it might be preferable to set the environment variable
- LD_RUN_PATH *before* building.
-
- On Cygwin, put the library directory in the PATH or move the ".dll"
- files into the "bin/" directory.
-
- If in doubt, refer to the manual pages of your system (perhaps "ld.so"
- or "rld"). If you later on get a message like
-psql: error in loading shared libraries
-libpq.so.2.1: cannot open shared object file: No such file or directory
-
- then this step was necessary. Simply take care of it then.
-
- If you are on BSD/OS, Linux, or SunOS 4 and you have root access you
- can run
-/sbin/ldconfig /usr/local/pgsql/lib
-
- (or equivalent directory) after installation to enable the run-time
- linker to find the shared libraries faster. Refer to the manual page
- of "ldconfig" for more information. On FreeBSD, NetBSD, and OpenBSD
- the command is
-/sbin/ldconfig -m /usr/local/pgsql/lib
-
- instead. Other systems are not known to have an equivalent command.
- _________________________________________________________________
-
- Environment Variables
-
- If you installed into "/usr/local/pgsql" or some other location that
- is not searched for programs by default, you should add
- "/usr/local/pgsql/bin" (or whatever you set "--bindir" to in step 1)
- into your PATH. Strictly speaking, this is not necessary, but it will
- make the use of PostgreSQL much more convenient.
-
- To do this, add the following to your shell start-up file, such as
- "~/.bash_profile" (or "/etc/profile", if you want it to affect every
- user):
-PATH=/usr/local/pgsql/bin:$PATH
-export PATH
-
- If you are using "csh" or "tcsh", then use this command:
-set path = ( /usr/local/pgsql/bin $path )
-
- To enable your system to find the man documentation, you need to add a
- line like the following to a shell start-up file unless you installed
- into a location that is searched by default.
-MANPATH=/usr/local/pgsql/man:$MANPATH
-export MANPATH
-
- The environment variables PGHOST and PGPORT specify to client
- applications the host and port of the database server, overriding the
- compiled-in defaults. If you are going to run client applications
- remotely then it is convenient if every user that plans to use the
- database sets PGHOST. This is not required, however: the settings can
- be communicated via command line options to most client programs.
- _________________________________________________________________
-
- Getting Started
-
- The following is a quick summary of how to get PostgreSQL up and
- running once installed. The Administrator's Guide contains more
- information.
- 1. Create a user account for the PostgreSQL server. This is the user
- the server will run as. For production use you should create a
- separate, unprivileged account ("postgres" is commonly used). If
- you do not have root access or just want to play around, your own
- user account is enough, but running the server as root is a
- security risk and will not work.
-adduser postgres
- 2. Create a database installation with the "initdb" command. To run
- "initdb" you must be logged in to your PostgreSQL server account.
- It will not work as root.
-root# mkdir /usr/local/pgsql/data
-root# chown postgres /usr/local/pgsql/data
-root# su - postgres
-postgres$ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
- The "-D" option specifies the location where the data will be
- stored. You can use any path you want, it does not have to be
- under the installation directory. Just make sure that the server
- account can write to the directory (or create it, if it doesn't
- already exist) before starting "initdb", as illustrated here.
- 3. The previous step should have told you how to start up the
- database server. Do so now. The command should look something like
-/usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data
- This will start the server in the foreground. To put the server in
- the background use something like
-nohup /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data \
- </dev/null >>server.log 2>&1 </dev/null &
- To stop a server running in the background you can type
-kill `cat /usr/local/pgsql/data/postmaster.pid`
- In order to allow TCP/IP connections (rather than only Unix domain
- socket ones) you need to pass the "-i" option to "postmaster".
- 4. Create a database:
-createdb testdb
- Then enter
-psql testdb
- to connect to that database. At the prompt you can enter SQL
- commands and start experimenting.
- _________________________________________________________________
-
- What Now?
-
- * The PostgreSQL distribution contains a comprehensive documentation
- set, which you should read sometime. After installation, the
- documentation can be accessed by pointing your browser to
- "/usr/local/pgsql/doc/html/index.html", unless you changed the
- installation directories.
- The Tutorial should be your first reading if you are completely
- new to SQL databases. If you are familiar with database concepts
- then you want to proceed with the Administrator's Guide, which
- contains information about how to set up the database server,
- database users, and authentication.
- * Usually, you will want to modify your computer so that it will
- automatically start the database server whenever it boots. Some
- suggestions for this are in the Administrator's Guide.
- * Run the regression tests against the installed server (using the
- sequential test method). If you didn't run the tests before
- installation, you should definitely do it now. This is also
- explained in the Administrator's Guide.
- _________________________________________________________________
-
- Supported Platforms
-
- PostgreSQL has been verified by the developer community to work on the
- platforms listed below. A supported platform generally means that
- PostgreSQL builds and installs according to these instructions and
- that the regression tests pass.
-
- Note: If you are having problems with the installation on a
- supported platform, please write to <pgsql-bugs@postgresql.org> or
- <pgsql-ports@postgresql.org>, not to the people listed here.
-
- OS Processor Version Reported Remarks
- AIX RS6000 7.3 2002-11-12, Andreas Zeugswetter
- (<ZeugswetterA@spardat.at>) see also doc/FAQ_AIX
- BSD/OS x86 7.3 2002-10-25, Bruce Momjian (<pgman@candle.pha.pa.us>)
- 4.2
- FreeBSD Alpha 7.3 2002-11-13, Chris Kings-Lynne
- (<chriskl@familyhealth.com.au>)
- FreeBSD x86 7.3 2002-10-29, 3.3, Nigel J. Andrews
- (<nandrews@investsystems.co.uk>), 4.7, Larry Rosenman
- (<ler@lerctr.org>), 5.0, Sean Chittenden (<sean@chittenden.org>)
- HP-UX PA-RISC 7.3 2002-10-28, 10.20 Tom Lane (<tgl@sss.pgh.pa.us>),
- 11.00, 11.11, 32 & 64 bit, Giles Lean (<giles@nemeton.com.au>) gcc and
- cc; see also doc/FAQ_HPUX
- IRIX MIPS 7.3 2002-10-27, Ian Barwick (<barwick@gmx.net>) Irix64 Komma
- 6.5
- Linux Alpha 7.3 2002-10-28, Magnus Naeslund (<mag@fbab.net>)
- 2.4.19-pre6
- Linux armv4l 7.2 2001-12-10, Mark Knox (<segfault@hardline.org>) 2.2.x
- Linux MIPS 7.2 2001-11-15, Hisao Shibuya (<shibuya@alpha.or.jp>)
- 2.0.x; Cobalt Qube2
- Linux PlayStation 2 7.3 2002-11-19, Permaine Cheung
- <pcheung@redhat.com>) #undef HAS_TEST_AND_SET, remove slock_t typedef
- Linux PPC74xx 7.3 2002-10-26, Tom Lane (<tgl@sss.pgh.pa.us>) bye
- 2.2.18; Apple G3
- Linux S/390 7.3 2002-11-22, Permaine Cheung <pcheung@redhat.com>) both
- s390 and s390x (32 and 64 bit)
- Linux Sparc 7.3 2002-10-26, Doug McNaught (<doug@mcnaught.org>) 3.0
- Linux x86 7.3 2002-10-26, Alvaro Herrera (<alvherre@dcc.uchile.cl>)
- 2.4
- MacOS X PPC 7.3 2002-10-28, 10.1, Tom Lane (<tgl@sss.pgh.pa.us>),
- 10.2.1, Adam Witney (<awitney@sghms.ac.uk>)
- NetBSD Alpha 7.2 2001-11-20, Thomas Thai (<tom@minnesota.com>) 1.5W
- NetBSD arm32 7.3 2002-11-19, Patrick Welche (<prlw1@newn.cam.ac.uk>)
- 1.6
- NetBSD m68k 7.0 2000-04-10, Henry B. Hotz (<hotz@jpl.nasa.gov>) Mac
- 8xx
- NetBSD MIPS 7.2.1 2002-06-13, Warwick Hunter (<whunter@agile.tv>)
- 1.5.3
- NetBSD PPC 7.2 2001-11-28, Bill Studenmund (<wrstuden@netbsd.org>) 1.5
- NetBSD Sparc 7.2 2001-12-03, Matthew Green (<mrg@eterna.com.au>) 32-
- and 64-bit builds
- NetBSD VAX 7.1 2001-03-30, Tom I. Helbekkmo (<tih@kpnQwest.no>) 1.5
- NetBSD x86 7.3 2002-11-14, Patrick Welche (<prlw1@newn.cam.ac.uk>) 1.6
- OpenBSD Sparc 7.3 2002-11-17, Christopher Kings-Lynne
- (<chriskl@familyhealth.com.au>) 3.2
- OpenBSD x86 7.3 2002-11-14, 3.1 Magnus Naeslund (<mag@fbab.net>), 3.2
- Christopher Kings-Lynne (<chriskl@familyhealth.com.au>)
- SCO OpenServer 5 x86 7.3.1 2002-12-11, Shibashish Satpathy
- (<shib@postmark.net>) 5.0.4, gcc; see also doc/FAQ_SCO
- Solaris Sparc 7.3 2002-10-28, Andrew Sullivan
- (<andrew@libertyrms.info>) Solaris 7 & 8; see also doc/FAQ_Solaris
- Solaris x86 7.3 2002-11-20, Martin Renters (<martin@datafax.com>) 5.8;
- see also doc/FAQ_Solaris
- SunOS 4 Sparc 7.2 2001-12-04, Tatsuo Ishii (<t-ishii@sra.co.jp>)
- Tru64 UNIX Alpha 7.3 2002-11-05, Alessio Bragadini
- (<alessio@albourne.com>)
- UnixWare x86 7.3 2002-11-01, 7.1.3 Larry Rosenman (<ler@lerctr.org>),
- 7.1.1 and 7.1.2(8.0.0) Olivier Prenant (<ohp@pyrenet.fr>) see also
- doc/FAQ_SCO
- Windows x86 7.3 2002-10-29, Dave Page (<dpage@vale-housing.co.uk>),
- Jason Tishler (<jason@tishler.net>) with Cygwin; see doc/FAQ_MSWIN
- Windows x86 7.3 2002-11-05, Dave Page (<dpage@vale-housing.co.uk>)
- native is client-side only; see Administrator's Guide
-
- Unsupported Platforms: The following platforms are either known not to
- work, or they used to work in a previous release and we did not
- receive explicit confirmation of a successful test with version 7.3 at
- the time this list was compiled. We include these here to let you know
- that these platforms *could* be supported if given some attention.
-
- OS Processor Version Reported Remarks
- BeOS x86 7.2 2001-11-29, Cyril Velter (<cyril.velter@libertysurf.fr>)
- needs updates to semaphore code
- DG/UX 5.4R4.11 m88k 6.3 1998-03-01, Brian E Gallew (<geek+@cmu.edu>)
- no recent reports
- MkLinux DR1 PPC750 7.0 2001-04-03, Tatsuo Ishii (<t-ishii@sra.co.jp>)
- 7.1 needs OS update?
- NeXTSTEP x86 6.x 1998-03-01, David Wetzel (<dave@turbocat.de>) bit rot
- suspected
- QNX 4 RTOS x86 7.2 2001-12-10, Bernd Tegge (<tegge@repas-aeg.de>)
- needs updates to semaphore code; see also doc/FAQ_QNX4
- QNX RTOS v6 x86 7.2 2001-11-20, Igor Kovalenko
- (<Igor.Kovalenko@motorola.com>) patches available in archives, but too
- late for 7.2
- System V R4 m88k 6.2.1 1998-03-01, Doug Winterburn
- (<dlw@seavme.xroads.com>) needs new TAS spinlock code
- System V R4 MIPS 6.4 1998-10-28, Frank Ridderbusch
- (<ridderbusch.pad@sni.de>) no recent reports
- Ultrix MIPS 7.1 2001-03-26 TAS spinlock code not detected
- Ultrix VAX 6.x 1998-03-01
+
+ Enables automatic dependency tracking. With this option, the
+ makefiles are set up so that all affected object files will be
+ rebuilt when any header file is changed. This is useful if you are
+ doing development work, but is just wasted overhead if you intend
+ only to compile once and install. At present, this option will work
+ only if you use GCC.
+
+ If you prefer a C compiler different from the one "configure" picks then
+ you can set the environment variable CC to the program of your choice. By
+ default, "configure" will pick "gcc" unless this is inappropriate for the
+ platform. Similarly, you can override the default compiler flags with the
+ CFLAGS variable.
+
+ You can specify environment variables on the "configure" command line,
+ for example:
+
+ ./configure CC=/opt/bin/gcc CFLAGS='-O2 -pipe'
+
+ 2. Build
+ To start the build, type
+
+ gmake
+
+ (Remember to use GNU make.) The build may take anywhere from 5 minutes to
+ half an hour depending on your hardware. The last line displayed should
+ be
+
+ All of PostgreSQL is successfully made. Ready to install.
+
+ 3. Regression Tests
+ If you want to test the newly built server before you install it, you can
+ run the regression tests at this point. The regression tests are a test
+ suite to verify that PostgreSQL runs on your machine in the way the
+ developers expected it to. Type
+
+ gmake check
+
+ (This won't work as root; do it as an unprivileged user.) It is possible
+ that some tests fail, due to differences in error message wording or
+ floating point results. The file "src/test/regress/README" and the
+ Administrator's Guide contain detailed information about interpreting the
+ test results. You can repeat this test at any later time by issuing the
+ same command.
+
+ 4. Installing The Files
+ Note: If you are upgrading an existing system and are going to
+ install the new files over the old ones, then you should have
+ backed up your data and shut down the old server by now, as
+ explained in the Section called If You Are Upgrading above.
+ To install PostgreSQL enter
+
+ gmake install
+
+ This will install files into the directories that were specified in step
+ 1. Make sure that you have appropriate permissions to write into that
+ area. Normally you need to do this step as root. Alternatively, you could
+ create the target directories in advance and arrange for appropriate
+ permissions to be granted.
+ You can use gmake install-strip instead of gmake install to strip the
+ executable files and libraries as they are installed. This will save some
+ space. If you built with debugging support, stripping will effectively
+ remove the debugging support, so it should only be done if debugging is
+ no longer needed. install-strip tries to do a reasonable job saving
+ space, but it does not have perfect knowledge of how to strip every
+ unneeded byte from an executable file, so if you want to save all the
+ disk space you possibly can, you will have to do manual work.
+ If you built the Python interfaces and you were not the root user when
+ you executed the above command then that part of the installation
+ probably failed. In that case you should become the root user and then do
+
+ gmake -C src/interfaces/python install
+
+ If you do not have superuser access you are on your own: you can still
+ take the required files and place them in other directories where Python
+ can find them, but how to do that is left as an exercise.
+ The standard installation provides only the header files needed for
+ client application development. If you plan to do any server-side program
+ development (such as custom functions or data types written in C), then
+ you may want to install the entire PostgreSQL include tree into your
+ target include directory. To do that, enter
+
+ gmake install-all-headers
+
+ This adds a megabyte or two to the installation footprint, and is only
+ useful if you don't plan to keep the whole source tree around for
+ reference. (If you do, you can just use the source's include directory
+ when building server-side software.)
+ Client-only installation: If you want to install only the client
+ applications and interface libraries, then you can use these commands:
+
+ gmake -C src/bin install
+ gmake -C src/include install
+ gmake -C src/interfaces install
+ gmake -C doc install
+
+Uninstallation: To undo the installation use the command "gmake uninstall".
+However, this will not remove any created directories.
+Cleaning: After the installation you can make room by removing the built files
+from the source tree with the command "gmake clean". This will preserve the
+files made by the configure program, so that you can rebuild everything with
+"gmake" later on. To reset the source tree to the state in which it was
+distributed, use "gmake distclean". If you are going to build for several
+platforms from the same source tree you must do this and re-configure for each
+build.
+If you perform a build and then discover that your configure options were
+wrong, or if you change anything that configure investigates (for example,
+software upgrades), then it's a good idea to do "gmake distclean" before
+reconfiguring and rebuilding. Without this, your changes in configuration
+choices may not propagate everywhere they need to.
+
+-------------------------------------------------------------------------------
+
+ Post-Installation Setup
+
+Shared Libraries
+
+On some systems that have shared libraries (which most systems do) you need to
+tell your system how to find the newly installed shared libraries. The systems
+on which this is *not* necessary include BSD/OS, FreeBSD, HP-UX, IRIX, Linux,
+NetBSD, OpenBSD, Tru64 UNIX (formerly Digital UNIX), and Solaris.
+The method to set the shared library search path varies between platforms, but
+the most widely usable method is to set the environment variable
+LD_LIBRARY_PATH like so: In Bourne shells ("sh", "ksh", "bash", "zsh")
+
+ LD_LIBRARY_PATH=/usr/local/pgsql/lib
+ export LD_LIBRARY_PATH
+
+or in "csh" or "tcsh"
+
+ setenv LD_LIBRARY_PATH /usr/local/pgsql/lib
+
+Replace /usr/local/pgsql/lib with whatever you set "--libdir" to in step 1. You
+should put these commands into a shell start-up file such as "/etc/profile" or
+"~/.bash_profile". Some good information about the caveats associated with this
+method can be found at http://www.visi.com/~barr/ldpath.html.
+On some systems it might be preferable to set the environment variable
+LD_RUN_PATH *before* building.
+On Cygwin, put the library directory in the PATH or move the ".dll" files into
+the "bin/" directory.
+If in doubt, refer to the manual pages of your system (perhaps "ld.so" or
+"rld"). If you later on get a message like
+
+ psql: error in loading shared libraries
+ libpq.so.2.1: cannot open shared object file: No such file or directory
+
+then this step was necessary. Simply take care of it then.
+If you are on BSD/OS, Linux, or SunOS 4 and you have root access you can run
+
+ /sbin/ldconfig /usr/local/pgsql/lib
+
+(or equivalent directory) after installation to enable the run-time linker to
+find the shared libraries faster. Refer to the manual page of "ldconfig" for
+more information. On FreeBSD, NetBSD, and OpenBSD the command is
+
+ /sbin/ldconfig -m /usr/local/pgsql/lib
+
+instead. Other systems are not known to have an equivalent command.
+
+-------------------------------------------------------------------------------
+
+Environment Variables
+
+If you installed into "/usr/local/pgsql" or some other location that is not
+searched for programs by default, you should add "/usr/local/pgsql/bin" (or
+whatever you set "--bindir" to in step 1) into your PATH. Strictly speaking,
+this is not necessary, but it will make the use of PostgreSQL much more
+convenient.
+To do this, add the following to your shell start-up file, such as
+"~/.bash_profile" (or "/etc/profile", if you want it to affect every user):
+
+ PATH=/usr/local/pgsql/bin:$PATH
+ export PATH
+
+If you are using "csh" or "tcsh", then use this command:
+
+ set path = ( /usr/local/pgsql/bin $path )
+
+To enable your system to find the man documentation, you need to add a line
+like the following to a shell start-up file unless you installed into a
+location that is searched by default.
+
+ MANPATH=/usr/local/pgsql/man:$MANPATH
+ export MANPATH
+
+The environment variables PGHOST and PGPORT specify to client applications the
+host and port of the database server, overriding the compiled-in defaults. If
+you are going to run client applications remotely then it is convenient if
+every user that plans to use the database sets PGHOST. This is not required,
+however: the settings can be communicated via command line options to most
+client programs.
+
+-------------------------------------------------------------------------------
+
+ Getting Started
+
+The following is a quick summary of how to get PostgreSQL up and running once
+installed. The Administrator's Guide contains more information.
+
+ 1. Create a user account for the PostgreSQL server. This is the user the
+ server will run as. For production use you should create a separate,
+ unprivileged account ("postgres" is commonly used). If you do not have
+ root access or just want to play around, your own user account is enough,
+ but running the server as root is a security risk and will not work.
+
+ adduser postgres
+
+ 2. Create a database installation with the "initdb" command. To run "initdb"
+ you must be logged in to your PostgreSQL server account. It will not work
+ as root.
+
+ root# mkdir /usr/local/pgsql/data
+ root# chown postgres /usr/local/pgsql/data
+ root# su - postgres
+ postgres$ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
+
+ The "-D" option specifies the location where the data will be stored. You
+ can use any path you want, it does not have to be under the installation
+ directory. Just make sure that the server account can write to the
+ directory (or create it, if it doesn't already exist) before starting
+ "initdb", as illustrated here.
+
+ 3. The previous step should have told you how to start up the database
+ server. Do so now. The command should look something like
+
+ /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data
+
+ This will start the server in the foreground. To put the server in the
+ background use something like
+
+ nohup /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data \
+ </dev/null >>server.log 2>&1 </dev/null &
+
+ To stop a server running in the background you can type
+
+ kill `cat /usr/local/pgsql/data/postmaster.pid`
+
+ In order to allow TCP/IP connections (rather than only Unix domain socket
+ ones) you need to pass the "-i" option to "postmaster".
+
+ 4. Create a database:
+
+ createdb testdb
+
+ Then enter
+
+ psql testdb
+
+ to connect to that database. At the prompt you can enter SQL commands and
+ start experimenting.
+
+-------------------------------------------------------------------------------
+
+ What Now?
+
+ * The PostgreSQL distribution contains a comprehensive documentation set,
+ which you should read sometime. After installation, the documentation can
+ be accessed by pointing your browser to "/usr/local/pgsql/doc/html/
+ index.html", unless you changed the installation directories.
+ The Tutorial should be your first reading if you are completely new to
+ SQL databases. If you are familiar with database concepts then you want
+ to proceed with the Administrator's Guide, which contains information
+ about how to set up the database server, database users, and
+ authentication.
+
+ * Usually, you will want to modify your computer so that it will
+ automatically start the database server whenever it boots. Some
+ suggestions for this are in the Administrator's Guide.
+
+ * Run the regression tests against the installed server (using the
+ sequential test method). If you didn't run the tests before installation,
+ you should definitely do it now. This is also explained in the
+ Administrator's Guide.
+
+-------------------------------------------------------------------------------
+
+ Supported Platforms
+
+PostgreSQL has been verified by the developer community to work on the
+platforms listed below. A supported platform generally means that PostgreSQL
+builds and installs according to these instructions and that the regression
+tests pass.
+ Note: If you are having problems with the installation on a supported
+ platform, please write to <pgsql-bugs@postgresql.org> or <pgsql-
+ ports@postgresql.org>, not to the people listed here.
+ __________________________________________________________________________________
+|OS________|Processor__|Version|Reported_________________________|Remarks__________|
+|AIX |RS6000 |7.3 |2002-11-12, Andreas Zeugswetter |see also doc/ |
+|__________|___________|_______|(<ZeugswetterA@spardat.at>)______|FAQ_AIX__________|
+|BSD/OS |x86 |7.3 |2002-10-25, Bruce Momjian |4.2 |
+|__________|___________|_______|(<pgman@candle.pha.pa.us>)_______|_________________|
+|FreeBSD |Alpha |7.3 |2002-11-13, Chris Kings-Lynne | |
+|__________|___________|_______|(<chriskl@familyhealth.com.au>)__|_________________|
+|FreeBSD |x86 |7.3 |2002-10-29, 3.3, Nigel J. Andrews| |
+| | | |(<nandrews@investsystems.co.uk>),| |
+| | | |4.7, Larry Rosenman | |
+| | | |(<ler@lerctr.org>), 5.0, Sean | |
+| | | |Chittenden | |
+|__________|___________|_______|(<sean@chittenden.org>)__________|_________________|
+|HP-UX |PA-RISC |7.3 |2002-10-28, 10.20 Tom Lane |gcc and cc; see |
+| | | |(<tgl@sss.pgh.pa.us>), 11.00, |also doc/FAQ_HPUX|
+| | | |11.11, 32 & 64 bit, Giles Lean | |
+|__________|___________|_______|(<giles@nemeton.com.au>)_________|_________________|
+|IRIX |MIPS |7.3 |2002-10-27, Ian Barwick |Irix64 Komma 6.5 |
+|__________|___________|_______|(<barwick@gmx.net>)______________|_________________|
+|Linux |Alpha |7.3 |2002-10-28, Magnus Naeslund |2.4.19-pre6 |
+|__________|___________|_______|(<mag@fbab.net>)_________________|_________________|
+|Linux |PlayStation|7.3 |2002-11-19, Permaine Cheung |#undef |
+| |2 | |<pcheung@redhat.com>) |HAS_TEST_AND_SET,|
+| | | | |remove slock_t |
+|__________|___________|_______|_________________________________|typedef__________|
+|Linux |PPC74xx |7.3 |2002-10-26, Tom Lane |bye 2.2.18; Apple|
+|__________|___________|_______|(<tgl@sss.pgh.pa.us>)____________|G3_______________|
+|Linux |S/390 |7.3 |2002-11-22, Permaine Cheung |both s390 and |
+| | | |<pcheung@redhat.com>) |s390x (32 and 64 |
+|__________|___________|_______|_________________________________|bit)_____________|
+|Linux |Sparc |7.3 |2002-10-26, Doug McNaught |3.0 |
+|__________|___________|_______|(<doug@mcnaught.org>)____________|_________________|
+|Linux |x86 |7.3 |2002-10-26, Alvaro Herrera |2.4 |
+|__________|___________|_______|(<alvherre@dcc.uchile.cl>)_______|_________________|
+|MacOS X |PPC |7.3 |2002-10-28, 10.1, Tom Lane | |
+| | | |(<tgl@sss.pgh.pa.us>), 10.2.1, | |
+| | | |Adam Witney | |
+|__________|___________|_______|(<awitney@sghms.ac.uk>)__________|_________________|
+|NetBSD |arm32 |7.3 |2002-11-19, Patrick Welche |1.6 |
+|__________|___________|_______|(<prlw1@newn.cam.ac.uk>)_________|_________________|
+|NetBSD |x86 |7.3 |2002-11-14, Patrick Welche |1.6 |
+|__________|___________|_______|(<prlw1@newn.cam.ac.uk>)_________|_________________|
+|OpenBSD |Sparc |7.3 |2002-11-17, Christopher Kings- |3.2 |
+| | | |Lynne | |
+|__________|___________|_______|(<chriskl@familyhealth.com.au>)__|_________________|
+|OpenBSD |x86 |7.3 |2002-11-14, 3.1 Magnus Naeslund | |
+| | | |(<mag@fbab.net>), 3.2 Christopher| |
+| | | |Kings-Lynne | |
+|__________|___________|_______|(<chriskl@familyhealth.com.au>)__|_________________|
+|SCO |x86 |7.3.1 |2002-12-11, Shibashish Satpathy |5.0.4, gcc; see |
+|OpenServer| | |(<shib@postmark.net>) |also doc/FAQ_SCO |
+|5_________|___________|_______|_________________________________|_________________|
+|Solaris |Sparc |7.3 |2002-10-28, Andrew Sullivan |Solaris 7 & 8; |
+| | | |(<andrew@libertyrms.info>) |see also doc/ |
+|__________|___________|_______|_________________________________|FAQ_Solaris______|
+|Solaris |x86 |7.3 |2002-11-20, Martin Renters |5.8; see also |
+|__________|___________|_______|(<martin@datafax.com>)___________|doc/FAQ_Solaris__|
+|Tru64 UNIX|Alpha |7.3 |2002-11-05, Alessio Bragadini | |
+|__________|___________|_______|(<alessio@albourne.com>)_________|_________________|
+|UnixWare |x86 |7.3 |2002-11-01, 7.1.3 Larry Rosenman |see also doc/ |
+| | | |(<ler@lerctr.org>), 7.1.1 and |FAQ_SCO |
+| | | |7.1.2(8.0.0) Olivier Prenant | |
+|__________|___________|_______|(<ohp@pyrenet.fr>)_______________|_________________|
+|Windows |x86 |7.3 |2002-10-29, Dave Page |with Cygwin; see |
+| | | |(<dpage@vale-housing.co.uk>), |doc/FAQ_MSWIN |
+| | | |Jason Tishler | |
+|__________|___________|_______|(<jason@tishler.net>)____________|_________________|
+|Windows |x86 |7.3 |2002-11-05, Dave Page |native is client-|
+| | | |(<dpage@vale-housing.co.uk>) |side only; see |
+| | | | |Administrator's |
+|__________|___________|_______|_________________________________|Guide____________|
+
+Unsupported Platforms: The following platforms are either known not to work, or
+they used to work in a previous release and we did not receive explicit
+confirmation of a successful test with version 7.3 at the time this list was
+compiled. We include these here to let you know that these platforms *could* be
+supported if given some attention.
+ ____________________________________________________________________________
+|OS_________|Processor|Version|Reported_______________________|Remarks_______|
+|BeOS |x86 |7.2 |2001-11-29, Cyril Velter |needs updates |
+| | | |(<cyril.velter@libertysurf.fr>)|to semaphore |
+|___________|_________|_______|_______________________________|code__________|
+|DG/UX |m88k |6.3 |1998-03-01, Brian E Gallew |no recent |
+|5.4R4.11___|_________|_______|(<geek+@cmu.edu>)______________|reports_______|
+|Linux |armv4l |7.2 |2001-12-10, Mark Knox |2.2.x |
+|___________|_________|_______|(<segfault@hardline.org>)______|______________|
+|Linux |MIPS |7.2 |2001-11-15, Hisao Shibuya |2.0.x; Cobalt |
+|___________|_________|_______|(<shibuya@alpha.or.jp>)________|Qube2_________|
+|MkLinux DR1|PPC750 |7.0 |2001-04-03, Tatsuo Ishii (<t- |7.1 needs OS |
+|___________|_________|_______|ishii@sra.co.jp>)______________|update?_______|
+|NetBSD |Alpha |7.2 |2001-11-20, Thomas Thai |1.5W |
+|___________|_________|_______|(<tom@minnesota.com>)__________|______________|
+|NetBSD |m68k |7.0 |2000-04-10, Henry B. Hotz |Mac 8xx |
+|___________|_________|_______|(<hotz@jpl.nasa.gov>)__________|______________|
+|NetBSD |MIPS |7.2.1 |2002-06-13, Warwick Hunter |1.5.3 |
+|___________|_________|_______|(<whunter@agile.tv>)___________|______________|
+|NetBSD |PPC |7.2 |2001-11-28, Bill Studenmund |1.5 |
+|___________|_________|_______|(<wrstuden@netbsd.org>)________|______________|
+|NetBSD |Sparc |7.2 |2001-12-03, Matthew Green |32- and 64-bit|
+|___________|_________|_______|(<mrg@eterna.com.au>)__________|builds________|
+|NetBSD |VAX |7.1 |2001-03-30, Tom I. Helbekkmo |1.5 |
+|___________|_________|_______|(<tih@kpnQwest.no>)____________|______________|
+|NeXTSTEP |x86 |6.x |1998-03-01, David Wetzel |bit rot |
+|___________|_________|_______|(<dave@turbocat.de>)___________|suspected_____|
+|QNX 4 RTOS |x86 |7.2 |2001-12-10, Bernd Tegge |needs updates |
+| | | |(<tegge@repas-aeg.de>) |to semaphore |
+| | | | |code; see also|
+|___________|_________|_______|_______________________________|doc/FAQ_QNX4__|
+|QNX RTOS v6|x86 |7.2 |2001-11-20, Igor Kovalenko |patches |
+| | | |(<Igor.Kovalenko@motorola.com>)|available in |
+| | | | |archives, but |
+| | | | |too late for |
+|___________|_________|_______|_______________________________|7.2___________|
+|SunOS 4 |Sparc |7.2 |2001-12-04, Tatsuo Ishii (<t- | |
+|___________|_________|_______|ishii@sra.co.jp>)______________|______________|
+|System V R4|m88k |6.2.1 |1998-03-01, Doug Winterburn |needs new TAS |
+|___________|_________|_______|(<dlw@seavme.xroads.com>)______|spinlock_code_|
+|System V R4|MIPS |6.4 |1998-10-28, Frank Ridderbusch |no recent |
+|___________|_________|_______|(<ridderbusch.pad@sni.de>)_____|reports_______|
+|Ultrix |MIPS |7.1 |2001-03-26 |TAS spinlock |
+| | | | |code not |
+|___________|_________|_______|_______________________________|detected______|
+|Ultrix_____|VAX______|6.x____|1998-03-01_____________________|______________|
+
diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml
index 5fab15f4717..8b53b1e854c 100644
--- a/doc/src/sgml/installation.sgml
+++ b/doc/src/sgml/installation.sgml
@@ -1,4 +1,4 @@
-<!-- $Header: /cvsroot/pgsql/doc/src/sgml/installation.sgml,v 1.103.2.22 2002/12/11 22:27:34 momjian Exp $ -->
+<!-- $Header: /cvsroot/pgsql/doc/src/sgml/installation.sgml,v 1.103.2.23 2002/12/18 23:38:08 petere Exp $ -->
<chapter id="installation">
<title><![%standalone-include[<productname>PostgreSQL</>]]>
@@ -1568,22 +1568,6 @@ gunzip -c user.ps.gz \
</row>
<row>
<entry><systemitem class="osname">Linux</></entry>
- <entry><systemitem>armv4l</></entry>
- <entry>7.2</entry>
- <entry>2001-12-10,
- Mark Knox (<email>segfault@hardline.org</email>)</entry>
- <entry>2.2.x</entry>
- </row>
- <row>
- <entry><systemitem class="osname">Linux</></entry>
- <entry><systemitem>MIPS</></entry>
- <entry>7.2</entry>
- <entry>2001-11-15,
- Hisao Shibuya (<email>shibuya@alpha.or.jp</>)</entry>
- <entry>2.0.x; <productname>Cobalt Qube2</></entry>
- </row>
- <row>
- <entry><systemitem class="osname">Linux</></entry>
<entry><systemitem>PlayStation 2</></entry>
<entry>7.3</entry>
<entry>2002-11-19,
@@ -1634,14 +1618,6 @@ gunzip -c user.ps.gz \
</row>
<row>
<entry><systemitem class="osname">NetBSD</></entry>
- <entry><systemitem>Alpha</></entry>
- <entry>7.2</entry>
- <entry>2001-11-20,
- Thomas Thai (<email>tom@minnesota.com</email>)</entry>
- <entry>1.5W</entry>
- </row>
- <row>
- <entry><systemitem class="osname">NetBSD</></entry>
<entry><systemitem>arm32</></entry>
<entry>7.3</entry>
<entry>2002-11-19,
@@ -1650,46 +1626,6 @@ gunzip -c user.ps.gz \
</row>
<row>
<entry><systemitem class="osname">NetBSD</></entry>
- <entry><systemitem>m68k</></entry>
- <entry>7.0</entry>
- <entry>2000-04-10,
- Henry B. Hotz (<email>hotz@jpl.nasa.gov</email>)</entry>
- <entry>Mac 8xx</entry>
- </row>
- <row>
- <entry><systemitem class="osname">NetBSD</></entry>
- <entry><systemitem>MIPS</></entry>
- <entry>7.2.1</entry>
- <entry>2002-06-13,
- Warwick Hunter (<email>whunter@agile.tv</email>)</entry>
- <entry>1.5.3</entry>
- </row>
- <row>
- <entry><systemitem class="osname">NetBSD</></entry>
- <entry><systemitem>PPC</></entry>
- <entry>7.2</entry>
- <entry>2001-11-28,
- Bill Studenmund (<email>wrstuden@netbsd.org</email>)</entry>
- <entry>1.5</entry>
- </row>
- <row>
- <entry><systemitem class="osname">NetBSD</></entry>
- <entry><systemitem>Sparc</></entry>
- <entry>7.2</entry>
- <entry>2001-12-03,
- Matthew Green (<email>mrg@eterna.com.au</email>)</entry>
- <entry>32- and 64-bit builds</entry>
- </row>
- <row>
- <entry><systemitem class="osname">NetBSD</></entry>
- <entry><systemitem>VAX</></entry>
- <entry>7.1</entry>
- <entry>2001-03-30,
- Tom I. Helbekkmo (<email>tih@kpnQwest.no</email>)</entry>
- <entry>1.5</entry>
- </row>
- <row>
- <entry><systemitem class="osname">NetBSD</></entry>
<entry><systemitem>x86</></entry>
<entry>7.3</entry>
<entry>2002-11-14,
@@ -1737,13 +1673,6 @@ gunzip -c user.ps.gz \
<entry>5.8; see also <filename>doc/FAQ_Solaris</filename></entry>
</row>
<row>
- <entry><systemitem class="osname">SunOS 4</></entry>
- <entry><systemitem>Sparc</></entry>
- <entry>7.2</entry>
- <entry>2001-12-04, Tatsuo Ishii (<email>t-ishii@sra.co.jp</email>)</entry>
- <entry></entry>
- </row>
- <row>
<entry><systemitem class="osname">Tru64 UNIX</></entry>
<entry><systemitem>Alpha</></entry>
<entry>7.3</entry>
@@ -1825,6 +1754,22 @@ gunzip -c user.ps.gz \
<entry>1998-03-01, Brian E Gallew (<email>geek+@cmu.edu</email>)</entry>
<entry>no recent reports</entry>
</row>
+ <row>
+ <entry><systemitem class="osname">Linux</></entry>
+ <entry><systemitem>armv4l</></entry>
+ <entry>7.2</entry>
+ <entry>2001-12-10,
+ Mark Knox (<email>segfault@hardline.org</email>)</entry>
+ <entry>2.2.x</entry>
+ </row>
+ <row>
+ <entry><systemitem class="osname">Linux</></entry>
+ <entry><systemitem>MIPS</></entry>
+ <entry>7.2</entry>
+ <entry>2001-11-15,
+ Hisao Shibuya (<email>shibuya@alpha.or.jp</>)</entry>
+ <entry>2.0.x; <productname>Cobalt Qube2</></entry>
+ </row>
<row>
<entry><systemitem class="osname">MkLinux DR1</></entry>
<entry><systemitem>PPC750</></entry>
@@ -1832,6 +1777,54 @@ gunzip -c user.ps.gz \
<entry>2001-04-03, Tatsuo Ishii (<email>t-ishii@sra.co.jp</email>)</entry>
<entry>7.1 needs OS update?</entry>
</row>
+ <row>
+ <entry><systemitem class="osname">NetBSD</></entry>
+ <entry><systemitem>Alpha</></entry>
+ <entry>7.2</entry>
+ <entry>2001-11-20,
+ Thomas Thai (<email>tom@minnesota.com</email>)</entry>
+ <entry>1.5W</entry>
+ </row>
+ <row>
+ <entry><systemitem class="osname">NetBSD</></entry>
+ <entry><systemitem>m68k</></entry>
+ <entry>7.0</entry>
+ <entry>2000-04-10,
+ Henry B. Hotz (<email>hotz@jpl.nasa.gov</email>)</entry>
+ <entry>Mac 8xx</entry>
+ </row>
+ <row>
+ <entry><systemitem class="osname">NetBSD</></entry>
+ <entry><systemitem>MIPS</></entry>
+ <entry>7.2.1</entry>
+ <entry>2002-06-13,
+ Warwick Hunter (<email>whunter@agile.tv</email>)</entry>
+ <entry>1.5.3</entry>
+ </row>
+ <row>
+ <entry><systemitem class="osname">NetBSD</></entry>
+ <entry><systemitem>PPC</></entry>
+ <entry>7.2</entry>
+ <entry>2001-11-28,
+ Bill Studenmund (<email>wrstuden@netbsd.org</email>)</entry>
+ <entry>1.5</entry>
+ </row>
+ <row>
+ <entry><systemitem class="osname">NetBSD</></entry>
+ <entry><systemitem>Sparc</></entry>
+ <entry>7.2</entry>
+ <entry>2001-12-03,
+ Matthew Green (<email>mrg@eterna.com.au</email>)</entry>
+ <entry>32- and 64-bit builds</entry>
+ </row>
+ <row>
+ <entry><systemitem class="osname">NetBSD</></entry>
+ <entry><systemitem>VAX</></entry>
+ <entry>7.1</entry>
+ <entry>2001-03-30,
+ Tom I. Helbekkmo (<email>tih@kpnQwest.no</email>)</entry>
+ <entry>1.5</entry>
+ </row>
<row>
<entry><systemitem class="osname">NeXTSTEP</></entry>
<entry><systemitem>x86</></entry>
@@ -1856,6 +1849,13 @@ gunzip -c user.ps.gz \
<entry>2001-11-20, Igor Kovalenko (<email>Igor.Kovalenko@motorola.com</email>)</entry>
<entry>patches available in archives, but too late for 7.2</entry>
</row>
+ <row>
+ <entry><systemitem class="osname">SunOS 4</></entry>
+ <entry><systemitem>Sparc</></entry>
+ <entry>7.2</entry>
+ <entry>2001-12-04, Tatsuo Ishii (<email>t-ishii@sra.co.jp</email>)</entry>
+ <entry></entry>
+ </row>
<row>
<entry><systemitem class="osname">System V R4</></entry>
<entry><systemitem>m88k</></entry>
diff --git a/doc/src/sgml/release.sgml b/doc/src/sgml/release.sgml
index 6ab499c7f3c..6fc3d2a9289 100644
--- a/doc/src/sgml/release.sgml
+++ b/doc/src/sgml/release.sgml
@@ -1,5 +1,5 @@
<!--
-$Header: /cvsroot/pgsql/doc/src/sgml/release.sgml,v 1.163.2.5 2002/12/18 02:07:24 momjian Exp $
+$Header: /cvsroot/pgsql/doc/src/sgml/release.sgml,v 1.163.2.6 2002/12/18 23:38:08 petere Exp $
-->
<appendix id="release">
@@ -24,9 +24,9 @@ $Header: /cvsroot/pgsql/doc/src/sgml/release.sgml,v 1.163.2.5 2002/12/18 02:07:2
<para>
A dump/restore is <emphasis>not</emphasis> required for those
running 7.3. However, it should be noted that the main PostgreSQL
- interface library, libpq, has a new major version number for this
- release, which may require recompilation of client code in certain
- cases.
+ interface library, <application>libpq</application>, has a new
+ major version number for this release, which will require that
+ client code using <application>libpq</application> be relinked.
</para>
</sect2>
@@ -35,22 +35,27 @@ $Header: /cvsroot/pgsql/doc/src/sgml/release.sgml,v 1.163.2.5 2002/12/18 02:07:2
<para>
<literallayout>
-Fix a core dump of COPY TO when client/server encodings don't match (Tom)
+Fix a core dump of COPY TO when client/server encodings don't match
+ (Tom)
Allow pg_dump to work with pre-7.2 servers (Tom)
-/contrib/adddepend fixes (Tom)
-Fix problem with deletion of per-user/per-database config settings (Tom)
-/contrib/vacuumlo fix (Tom)
-Allow 'password' encryption even when pg_shadow contains MD5 passwords (Bruce)
-/contrib/dbmirror fix (Steven Singer)
+contrib/adddepend fixes (Tom)
+Fix problem with deletion of per-user/per-database config settings
+ (Tom)
+contrib/vacuumlo fix (Tom)
+Allow 'password' encryption even when pg_shadow contains MD5 passwords
+ (Bruce)
+contrib/dbmirror fix (Steven Singer)
Optimizer fixes (Tom)
-/contrib/tsearch fixes (Teodor Sigaev, Magnus)
-Allow locale names to be mixed case (Nicolai Tufar)
+contrib/tsearch fixes (Teodor Sigaev, Magnus)
+Fix encoding name resolution to work in Turkish locale (Nicolai Tufar)
Increment libpq library's major version number (Bruce)
pg_hba.conf error reporting fixes (Bruce, Neil)
-Add SCO Openserver 5.0.4 as a supported platform (Bruce)
+Add SCO OpenServer 5.0.4 as a supported platform (Bruce)
Prevent EXPLAIN from crashing server (Tom)
SSL fixes (Nathan Mueller)
Prevent composite column creation via ALTER TABLE (Tom)
+Fix conversion between LATIN9 and UNICODE (Peter)
+Translation updates
</literallayout>
</para>
</sect2>