The open source project behind the PostgreSQL relational database is
blowing its nose trumpeting the availability of PostgresSQL 8.4, a rev that includes 293 new or improved features that make the database easier to administer and more useful to programmers and end users.
The new code, which is available for download here, was set to launch on June 29, but had a show-stopper bug that needed to be fixed at the last minute, according to Josh Berkus, a member of the PostgreSQL core development team. The bug related to the standby database failover feature of PostgreSQL that could have potentially caused some data loss for certain setups, so Berkus held up the release for two days to test a bug fix. (The bug fix worked, and if it didn't, then PostgreSQL 8.4 would still not be available).
While there are a plethora of features that database administrators and programmers are going to eat up, the big enhancements in PostgreSQL 8.4 include the ability to do a parallel database restore (which can speed up database recovery time by a factor of two to eight, depending on the underlying iron and how you set it up) and the ability to do "in-place" upgrades from PostgreSQL 8.3 to 8.4 "without extensive downtime." (It would be best, of course, to have no downtime. That's why companies that can't take downtime have high availability clustering of their database servers). This pg_Migrator tool is still in beta, by the way.
PostgreSQL also includes a new set of query monitoring tools, to allow administrators to monitor end users and see what queries they are launching at the database. (Some users, particularly in marketing, are fond of launching complex queries during peak transaction loads and inadvertently cripple system throughput with their crafty questions).
The updated database also includes ANSI SQL2003 features such as recursive joins, windowing functions, and common table expressions, features which allow end users to pose different kinds of questions of their databases that was possible with PostgreSQL 8.3 and earlier releases. There are enhancements to stored procedures, such as default parameters and variadic parameters, that the project says makes database programming more simple and compact as well.
The blow-by-blow feature list for PostgreSQL 8.4 is in the release notes, and the project has put together a feature matrix so you can see the evolution of PostgreSQL from the 7.4 though 8.4 releases. PostgreSQL 8.4 comes in pre-compiled binaries for FreeBSD, Linux, Mac OS X, Solaris (the x64 version of Solaris 10 only), and Windows operating systems. If you are a real do-it-yourselfer, it is possible to compile PostgreSQL source code to run on AIX, HP-UX, SCO UnixWare and OpenServer, and Irix Unixes, and it can run on just about any chip architecture you can name, as the release notes show. ®