With PostgreSQL 9.0
approaching its final release, work on the next incremental version has already begun. Today, PostgreSQL project developers released the first alpha
of version 9.1. This future release will add several major new features including compact representations of numeric types, and new XML-related functions.
PostgreSQL 9.0 added many excellent new features that should see some polishing in version 9.1 Two major features added in 9.0 include Hot Standby and Streaming Replication. PostgreSQL 9.0 also includes SQL compliant per-column triggers, anonymous functions using the DO statement, and enhanced server side language support.
One major change in 9.1 that could cause significant incompatibility with previous releases is the switching of standard_conforming_strings to "on". This may break the security features of some "unwary" applications. 9.1 also includes more compact representations of the numeric type. Vacuum and analyze counters have been added to pg_stat_*_tables views, and the lock levels of CREATE TRIGGER and some ALTER TABLE, CREATE RULE actions have been reduced.
SQL statements in 9.1 will allow references to other columns without listing them in the GROUP BY clause. The GROUP BY clause only needs to refer to primary keys. This feature will simplify the construction of more complex SQL statements that refer to many columns. A useful new function is the "CREATE TABLE IF NOT EXISTS" function, which is helpful when writing scripts to bootstrap a database.
Finally, the new alpha also includes new XML-related functions: xmlexists, xpath_exists, xml_is_well_formed, string functions concat(), left() and right().
PostgreSQL 9.1 won't be finished until mid-2011 at the earliest. For more details on 9.1's new features, go to the release notes
. Download the alpha here