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.
Jdbc fixes (Peter)
Large object fix (Tom)
Fix lean in COPY WITH OIDS leak (Tom)
Fix backwards-index-scan (Tom)
Fix SELECT ... FOR UPDATE so it checks for duplicate keys (Hiroshi)
Add --enable-syslog to configure (Marc)
Fix abort transaction at backend exit in rare cases (Tom)
Fix for psql \l+ when multi-byte enabled (Tatsuo)
Allow PL/pgSQL to accept non ascii identifiers (Tatsuo)
Make vacuum always flush buffers (Tom)
Fix to allow cancel while waiting for a lock (Hiroshi)
Fix for memory aloocation problem in user authentication code (Tom)
Remove bogus use of int4out() (Tom)
Fixes for multiple subqueries in COALESCE or BETWEEN (Tom)
Fix for failure of triggers on heap open in certain cases (Jeroen van Vianen)
Fix for erroneous selectivity of not-equals (Tom)
Fix for erroneous use of strcmp() (Tom)
Fix for bug where storage manager accesses items beyond end of file (Tom)
Fix to include kernel errno message in all smgr elog messages (Tom)
Fix for '.' not in PATH at build time (SL Baur)
Fix for out-of-file-descriptors error (Tom)
Fix to make pg_dump dump 'iscachable' flag for functions (Tom)
Fix for subselect in targetlist of Append node (Tom)
Fix for mergejoin plans (Tom)
Fix TRUNCATE failure on relations with indexes (Tom)
Avoid database-wide restart on write error (Hiroshi)
Fix nodeMaterial to honor chgParam by recomputing its output (Tom)
Fix VACUUM problem with moving chain of update tuples when source and destination of a tuple lie on the same page (Tom)
Fix user.c CommandCounterIncrement (Tom)
Fix for AM/PM boundary problem in to_char() (Karel Zak)
Fix TIME aggregate handling (Tom)
Fix to_char() to avoid coredump on NULL input (Tom)
Buffer fix (Tom)
Fix for inserting/copying longer multibyte strings into char() data types (Tatsuo)
Fix for crash of backend, on abort (Tom)
* Enhance rc.d/pgsql.sh script to accept start/stop/restart.
* Add fixes for alpha from Kevin P. Neal <kpn@neutralgood.org> in PR#10543.
XXX Includes a patch which removes inlining of the alpha's TAS function.
XXX This is apparently some code-gen bug in GCC for alpha.
* Fix many CLUSTER failures (Tom)
* Allow ALTER TABLE RENAME works on indexes (Tom)
* Fix plpgsql to handle datetime->timestamp and timespan->interval (Bruce)
* New configure --with-setproctitle switch to use setproctitle() (Marc, Bruce)
* Fix the off by one errors in ResultSet from 6.5.3, and more.
* jdbc ResultSet fixes (Joseph Shraibman)
* optimizer tunings (Tom)
* Fix create user for pgaccess
* Fix for UNLISTEN failure
* Reduce COPY IN lock level (Tom)
* Change libpqeasy to use PQconnectdb() style parameters (Bruce)
* Fix pg_dump to handle OID indexes (Tom)
* Fix small memory leak (Tom)
* Solaris fix for createdb/dropdb (Tatsuo)
* Fix for non-blocking connections (Alfred Perlstein)
* Fix improper recovery after RENAME TABLE failures (Tom)
* Copy pg_ident.conf.sample into /lib directory in install (Bruce)
* Add SJIS UDC (NEC selection IBM kanji) support (Eiji Tokuya)
* Fix too long syslog message (Tatsuo)
* Fix problem with quoted indexes that are too long (Tom)
* JDBC ResultSet.getTimestamp() fix (Gregory Krasnow & Floyd Marinescu)
* ecpg changes (Michael)
A HUGE number of bug/performance fixes and minor enhancements.
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
overhauled, allowing improved query execution and better
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.
Upcoming Features
In 7.1 or 7.2, we plan to have outer joins, storage for very
long rows, and a write-ahead logging system.
A dump/restore using pg_dump is required for those wishing to migrate
data from any previous release. For those upgrading from 6.5.*, you
can use pg_upgrade to upgrade to this release.
unlibtoolized. Things now install into ${PREFIX} instead of
${PREFIX}/${PGSQL_USER} to match hier(7) expectations. The Tcl and Tk
interfaces are now split out into separate packages.
This closes the following PRs: 7384, 8747, 8789, 9272, 9461.
Split PGSQL_USE_TCL into PGSQL_USE_TCL and PGSQL_USE_TK so that postgres
can be built with tcl support on a machine without tk (such as a machine
without X installed...)
doesn't use it. Later tonight or tomorrow morning, I will commit a jdbc-postgresql
package which will share DISTFILE and patch goo with this package.
All this may eventually be replaced if the client stuff is factored out of the
postgresql package, but that's not me.
from the main PostgreSQL distribution, and must be installed separately
(databases/pgaccess). Relevant changes from 6.5.1:
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)
Fix BTScan abort(Tom)
Repair the check for redundant UNIQUE and PRIMARY KEY indices(Thomas)
Improve it so that it checks for multi-column constraints(Tom)
Fix for Win32 making problem with MB enabled(Hiroki Kataoka)
Allow BSD yacc and bison to compile pl code(Bruce)
Fix SET NAMES
int8 fixes(Thomas)
Fix vacuum's memory consumption(Hiroshi,Tatsuo)
Reduce the total memory consumption of vacuum(Tom)
Fix for timestamp(datetime)
Rule deparsing bugfixes(Tom)
Fix quoting problems in mkMakefile.tcldefs.sh.in and
mkMakefile.tkdefs.sh.in(Tom)
This is to re-use space on index pages freed by vacuum(Vadim)
document -x for pg_dump(Bruce)
Fix for unary operators in rule deparser(Tom)
Comment out FileUnlink of excess segments during mdtruncate()(Tom)
Irix linking fix from Yu Cao <yucao@falcon.kla-tencor.com>
Repair logic error in LIKE: should not return LIKE_ABORT
when reach end of pattern before end of text(Tom)
Repair incorrect cleanup of heap memory allocation during transaction
abort(Tom)
removed, but this should still function correctly on a.out systems. This
package was originally submitted by D'Arcy J.M. Cain, but with major
overhauling by me.
Closes PR#7865 and relevant part of PR#8299.
Major changes from version 6.4.2:
Multi-version concurrency control(MVCC)
This removes our old table-level locking, and replaces it with a
locking system that is superior to most commercial database
systems. In a traditional system, each row that is modified is
locked until committed, preventing reads by other users. MVCC
uses the natural multi-version nature of PostgreSQL to allow
readers to continue reading consistent data during writer
activity. Writers continue to use the compact pg_log transaction
system. This is all performed without having to allocate a lock
for every row like traditional database 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
consistant 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
WinNT/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
platforms. The Tutorial has introductory information on SQL from
Stefan Simkovics. For the User's Guide, there are reference pages
covering the postmaster and more utility programs, and a new
appendix contains details on date/time behavior. The
Administrator's Guide has a new chapter on troubleshooting from
Tom Lane. And the Programmer's Guide has a description of query
processing, also from Stefan, and details on obtaining the
Postgres source tree via anonymous CVS and CVSup.