holes.
Restore creation of OID column in CREATE TABLE AS / SELECT INTO
Fix pg_dump core dump when dumping views having comments
Dump DEFERRABLE/INITIALLY DEFERRED constraints properly
Fix UPDATE when child table's column numbering differs from parent
Increase default value of max_fsm_relations
Fix problem when fetching backwards in a cursor for a single-row query
Make backward fetch work properly with cursor on SELECT DISTINCT query
Fix problems with loading pg_dump files containing contrib/lo usage
Fix problem with all-numeric user names
Fix possible memory leak and core dump during disconnect in libpgtcl
Make plpython's spi_execute command handle nulls properly (Andrew Bosma)
Adjust plpython error reporting so that its regression test passes again
Work with bison 1.875
Handle mixed-case names properly in plpgsql's %type (Neil)
Fix core dump in pltcl when executing a query rewritten by a rule
Repair array subscript overruns (per report from Yichen Xie)
Reduce MAX_TIME_PRECISION from 13 to 10 in floating-point case
Correctly case-fold variable names in per-database and per-user settings
Fix coredump in plpgsql's RETURN NEXT when SELECT into record returns
no rows
Fix outdated use of pg_type.typprtlen in python client interface
Correctly handle fractional seconds in timestamps in JDBC driver
Improve performance of getImportedKeys() in JDBC
Make shared-library symlinks work standardly on HPUX (Giles)
Repair inconsistent rounding behavior for timestamp, time, interval
SSL negotiation fixes (Nathan Mueller)
Make libpq's ~/.pgpass feature work when connecting with PQconnectDB
Update my2pg, ora2pg
Translation updates
Add casts between types lo and oid in contrib/lo
fastpath code now checks for privilege to call function
==================================================================
| NOTE: A dump-and-restore is required to update your databases |
| if you wish to update postgresql-server. 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 |
==================================================================
Major changes from version 7.2.3 include:
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
deprecated: there are specific "pseudo-datatypes" to represent
each of the former meanings of OPAQUE in function argument and
result types.
This has a variety of fixes from 7.2.2, including fixes to prevent
possible data loss.
A dump/restore is *not* required for those running 7.2.X.
Changes from version 7.2.2 include:
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)
Fix possible hang during server shutdown
Prevent spinlock hangs on SMP PPC machines (Tomoyuki Niijima)
Fix pg_dump to properly dump FULL JOIN USING (Tom)
*** Please note that a dump/restore is NOT required for those ***
*** running PostgreSQL 7.2. ***
Important changes from version 7.2 include:
Ensure that sequence counters do not go backwards after a crash (Tom)
Allow psql \connect to handle mixed case database and user names (Tom)
Return proper OID on command completion even with ON INSERT rules (Tom)
Allow COPY FROM to use 8-bit DELIMITERS (Tatsuo)
Improve handling of multiple UNIONs with different lengths (Tom)
Fix for array subscripts handling (Tom)
Allow EXECUTE of "CREATE TABLE AS ... SELECT" in PL/PgSQL (Tom)
<explorer@flame.org> for most of the work on this update.
Pkgsrc changes from the previous version include removing Makefile.ssl and
some patches that have been integrated into this release of PostgreSQL. We
leave open the question of when to byte-compile the Python modules for the
PyGreSQL interface and just do it as before, although we should consider
doing the compilation as a post-install step to ensure that the timestamps
are correct. We also reorder some lines in the Makefile to include
Makefile.common below certain definitions (GNU_CONFIGURE, USE_BUILDLINK_ONLY)
as they may possibly trigger different portions of Makefile.common.
*** Please note that a dump/restore is required to migrate an existing ***
*** PostgreSQL installation to 7.2. ***
Major changes from version 7.1.3 are geared toward improving use in
high-volume applications and include:
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.
OID's
OID's are now optional. Users can now create tables without OID's
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. PAM authentication
is also available.
Statistics
Administrators can use the new table access statistics module to
get fine-grained information about table and index usage.
found at run-time, as before, the -Wl,-R options that set the run-time
library search path weren't being used. Simply using LDFLAGS without
filtering doesn't work because the configure script appends CFLAGS to
LDFLAGS, and some commonly-used compiler options, e.g. -mcpu=..., which
causes python's makesetup to choke because the options aren't in the list
of recognized linker options. Thanks to D'Arcy J.M. Cain <darcy@druid.net>
for pointing out the error and possible solution.
differs from the distfile version number. G/C some the unused variables
in postgresql/Makefile.common related to the old way of handling version
numbers.
next distribution. This patch brings it up to date now. Major fixes:
- Support for more types. This fixes a bug introduced in the current
PostgreSQL because of the different way of handling agregates.
- Add WIN32 support
- Fix some DB-API quoting problems
Relevant changes from version 7.1.2 include:
Remove unused WAL segements of large transactions
Multiaction rule fix
Pl/pgSQL memory allocation fix
VACUUM buffer fix
pg_dump fixes for GRANT/REVOKE/comments on views, user-defined types
Fix subselects with DISTINCT ON or LIMIT
Disable COPY TO/FROM a view
problems early on if insufficient libraries are specified during linking.
Move the configure script patch to the last patch of the group so that
the configure script will have the most recent timestamp.
CXXFLAGS, and LDFLAGS by the buildlink.mk files so remove the extra
definitions to add them from the package Makefiles. As advised by the
bsd.buildlink.mk file, also ensure that the buildlink.mk files are
included prior to defining any package-specific CFLAGS/LDFLAGS to ensure
that the buildlink directories are at the head of the compiler search
paths.
postgresql sources:
postgresql-client, postgresql-docs, postgresql-lib, postgresql-server,
postgresql-plperl, postgresql-pltcl,
odbc-postgresql, py-postgresql, tcl-postgresql, tk-postgresql
to 7.1.2 or to depend on postgresql-libs-7.1.2. Changes from version 7.1.1:
Fix PL/PgSQL SELECTs when returning no rows
Fix for psql backslash core dump
Referential integrity permission fix
Optimizer fixes
pg_dump cleanups
Use BUILDLINK_INCDIR, BUILDLINK_LIBDIR for locations of linked headers
and libraries. Create a variable BUILDLINK_TARGETS whose value is the
list of build-link targets to execute.
postgresql-lib
postgresql-client
postgresql-server
postgresql-doc
with postgresql as a meta-package. Major changes from version 7.1.1
include:
Write-ahead Log (WAL) - To maintain database consistency in
case of an operating system crash, previous releases of PostgreSQL
have forced all data modifications to disk before each transaction
commit. With WAL, only one log file must be flushed to disk, greatly
improving performance. If you have been using -F in previous releases
to disable disk flushes, you may want to consider discontinuing its
use.
TOAST - Previous releases had a compiled-in row length limit,
typically 8 - 32 kB. 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 NULLs 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, aggregates, UNION, LIMIT, cursors, subqueries, and inherited
tables now work properly. Inherited tables are now accessed by
default. Subqueries in FROM are now supported.
Migration to 7.1.1
A dump/restore using pg_dump is required for those wishing to migrate
data from any previous release.
first component is now a package name+version/pattern, no more
executable/patchname/whatnot.
While there, introduce BUILD_USES_MSGFMT as shorthand to pull in
devel/gettext unless /usr/bin/msgfmt exists (i.e. on post-1.5 -current).
Patch by Alistair Crooks <agc@netbsd.org>
Convert most MESSAGE files to new syntax (${VARIABLE} gets replaced,
not @VARIABLE@, nor @@VARIABLE@@).
By default, substitutions are done for LOCALBASE, PKGNAME, PREFIX,
X11BASE, X11PREFIX; additional patterns can be added via MESSAGE_SUBST.
Clean up some packages while I'm there; add RCS tags to most MESSAGEs.
Remove some uninteresting MESSAGEs.
out of date - it was based on a.out OBJECT_FMT, and added entries in the
generated PLISTs to reflect the symlinks that ELF packages uses. It also
tried to be clever, and removed and recreated any symbolic links that were
created, which has resulted in some fun, especially with packages which
use dlopen(3) to load modules. Some recent changes to our ld.so to bring
it more into line with other Operating Systems also exposed some cracks.
+ Modify bsd.pkg.mk and its shared object handling, so that PLISTs now contain
the ELF symlinks.
+ Don't mess about with file system entries when handling shared objects in
bsd.pkg.mk, since it's likely that libtool and the BSD *.mk processing will
have got it right, and have a much better idea than we do.
+ Modify PLISTs to contain "ELF symlinks"
+ On a.out platforms, delete any "ELF symlinks" from the generated PLISTs
+ On ELF platforms, no extra processing needs to be done in bsd.pkg.mk
+ Modify print-PLIST target in bsd.pkg.mk to add dummy symlink entries on
a.out platforms
+ Update the documentation in Packages.txt
With many thanks to Thomas Klausner for keeping me honest with this.