E.336.1. Overview

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.

E.336.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 might wish to update your maintenance
procedures accordingly.

In this release, comparisons using = NULL will always return false (or
NULL, more precisely). Previous releases automatically
transformed this syntax to IS
NULL. The old behavior can be re-enabled using a
postgresql.conf
parameter.

The pg_hba.conf and
pg_ident.conf configuration
is now only reloaded after receiving a SIGHUP signal, not with each
connection.

The function octet_length() now returns the
uncompressed data length.

The date/time value 'current' is no longer available. You
will 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.