Version Historie vonPostgreSQL 9.1.5

With significant new functionality and performance enhancements, this release represents a major leap forward for PostgreSQL. This was made possible by a growing community that has dramatically accelerated the pace of development. This release adds the following major features:

  • Full text search is integrated into the core database system
  • Support for the SQL/XML standard, including new operators and an XML data type
  • Enumerated data types (ENUM)
  • Arrays of composite types
  • Universally Unique Identifier (UUID) data type
  • Add control over whether NULLs sort first or last
  • Updatable cursors
  • Server configuration parameters can now be set on a per-function basis
  • User-defined types can now have type modifiers
  • Automatically re-plan cached queries when table definitions change or statistics are updated
  • Numerous improvements in logging and statistics collection
  • Support Security Service Provider Interface (SSPI) for authentication on Windows
  • Support multiple concurrent autovacuum processes, and other autovacuum improvements
  • Allow the whole PostgreSQL distribution to be compiled with Microsoft Visual C++

Major performance improvements are listed below. Most of these enhancements are automatic and do not require user changes or tuning:

  • Asynchronous commit delays writes to WAL during transaction commit
  • Checkpoint writes can be spread over a longer time period to smooth the I/O spike during each checkpoint
  • Heap-Only Tuples (HOT) accelerate space reuse for most UPDATEs and DELETEs
  • Just-in-time background writer strategy improves disk write efficiency
  • Using non-persistent transaction IDs for read-only transactions reduces overhead and VACUUM requirements
  • Per-field and per-row storage overhead has been reduced
  • Large sequential scans no longer force out frequently used cached pages
  • Concurrent large sequential scans can now share disk reads
  • ORDER BY ... LIMIT can be done without sorting

The above items are explained in more detail in the sections below.