| PostgreSQL 8.1.8 Documentation | ||||
|---|---|---|---|---|
| Prev | Fast Backward | Appendix E. Release Notes | Fast Forward | Next |
Release date: 2002-11-27
Major changes in this release:
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 privileges on the public schema.
PostgreSQL now supports the ALTER TABLE ... DROP COLUMN functionality.
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.
PostgreSQL now supports prepared queries, for improved performance.
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.
Functions and procedural languages now have privileges, and functions can be defined to run with the privileges of their creator.
Both multibyte and locale support are now always enabled.
A variety of logging options have been enhanced.
A large number of interfaces have been moved to http://gborg.postgresql.org where they can be developed and released independently.
By default, functions can now take up to 32 parameters, and identifiers can be up to 63 bytes long. Also, OPAQUE is now deprecated: there are specific "pseudo-datatypes" to represent each of the former meanings of OPAQUE in function argument and result types.
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://developer.postgresql.org/~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.
Several postgresql.conf logging parameters have been renamed.
LIMIT #,# has been disabled; use LIMIT # OFFSET #.
INSERT statements with column lists must specify a value for each specified column. For example, INSERT INTO tab (col1, col2) VALUES ('val1') is now invalid. It's still allowed to supply fewer columns than expected if the INSERT does not have a column list.
serial columns are no longer automatically UNIQUE; thus, an index will not automatically be created.
A SET command inside an aborted transaction is now rolled back.
COPY no longer considers missing trailing columns to be null. All columns need to be specified. (However, one may achieve a similar effect by specifying a column list in the COPY command.)
The data type timestamp is now equivalent to timestamp without time zone, instead of timestamp with time zone.
Pre-7.3 databases loaded into 7.3 will not have the new object Internals