USE_PKGINSTALL is "YES". bsd.pkg.install.mk will no longer automatically
pick up a INSTALL/DEINSTALL script in the package directory and assume that
you want it for the corresponding *_EXTRA_TMPL variable.
In rc.d/pgsql call pgsql_initdb directly for initial database
setup, rather than trying to determine the script location
from $0 and calling '$rcd_dir/pgsql initdb'. The previous
form broke when called from /etc/rc.
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
have it be automatically included by bsd.pkg.mk if USE_PKGINSTALL is set
to "YES". This enforces the requirement that bsd.pkg.install.mk be
included at the end of a package Makefile. Idea suggested by Julio M.
Merino Vidal <jmmv at menta.net>.
==================================================================
| 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 is specified at run-time by setting pgsql_home=/path/to/home in
/etc/rc.conf. Ensure that ${pgsql_home} has the correct permissions
(o=${pgsql_user}, g=${pgsql_group}, m=0750) before initializing the
database.
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)
<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.
than "smart" mode so that the the database will always cleanly shutdown.
Previously, postgres would wait for clients to disconnect before stopping
the database process, which sometimes resulted in unclean shutdowns.
Problem noted by Curt Sampson <cjs@cynic.net> in private email.
I also convert this to use /etc/rc.subr if it is present.
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.
bsd.pkg.install.mk:
* Remove old DEINSTALL/INSTALL scripts.
* Move some text printed at POST-INSTALL time into the MESSAGE file.
* Adjust rc.d scripts to respect rc.conf settings, so that the
script may be directly copied into /etc/rc.d.
- use 'id' instead of 'finger'. this is not a real problem, but it
is enough and fixing the next problem makes it possible to use it.
- grep -q doesn't work on solaris, so use a different way to suppress
the output from the user check.
- the return code check for the user was reversed.
FOO_REQD=1.0 being converted to foo>=1.0, one can now directly specify
the dependency pattern as FOO_DEPENDS=foo>=1.0. This allows things like
JPEG_DEPENDS=jpeg-6b, or fancier expressions like for postgresql-lib.
Change existing FOO_REQD definitions in Makefiles to FOO_DEPENDS.