PostgreSQL is a powerful, open source object-relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, and correctness.
It is fully ACID compliant, has full support for foreign keys, joins, views, triggers, and stored procedures (in multiple languages). It includes most SQL:2008 data types, including INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP.
Restrict visibility of pg_user_mappings.umoptions, to protect passwords stored as user mapping options.
Prevent exposure of statistical information via leaky operators.
Restore libpq's recognition of the PGREQUIRESSL environment variable .
Fix possibly-invalid initial snapshot during logical decoding .
Fix possible corruption of "init forks" of unlogged indexes.
Fix incorrect reconstruction of pg_subtrans entries when a standby server replays a prepared but uncommitted two-phase transaction.
Avoid possible crash in walsender due to failure to initialize a string buffer.
Fix possible crash when rescanning a nearest-neighbor index-only scan on a GiST index.
Prevent delays in postmaster's launching of multiple parallel worker processes.
Fix postmaster's handling of fork() failure for a background worker process .
Fix possible "no relation entry for relid 0" error when planning nested set operations.
Fix assorted minor issues in planning of parallel queries.
Avoid applying "physical targetlist" optimization to custom scans.
Use the correct sub-expression when applying a FOR ALL row-level-security policy.
Ensure parsing of queries in extension scripts sees the results of immediately-preceding DDL.
Skip tablespace privilege checks when ALTER TABLE ... ALTER COLUMN TYPE rebuilds an existing index.
Fix ALTER TABLE ... VALIDATE CONSTRAINT to not recurse to child tables when the constraint is marked NO INHERIT.
Avoid dangling pointer in COPY ... TO when row-level security is active for the source table.
Avoid accessing an already-closed relcache entry in CLUSTER and VACUUM FULL.
Fix VACUUM to account properly for pages that could not be scanned due to conflicting page pins.
Ensure that bulk-tuple-transfer loops within a hash join are interruptible by query cancel requests.
Fix incorrect support for certain box operators in SP-GiST.
Fix integer-overflow problems in interval comparison.
Fix cursor_to_xml() to produce valid output with tableforest = false.
Fix roundoff problems in float8_timestamptz() and make_interval().
Fix pg_get_object_address() to handle members of operator families correctly.
Fix cancelling of pg_stop_backup() when attempting to stop a non-exclusive backup.
Improve performance of pg_timezone_names view.
Reduce memory management overhead for contexts containing many large blocks.
Fix sloppy handling of corner-case errors from lseek() and close().
Fix incorrect check for whether postmaster is running as a Windows service.
Fix ecpg to support COMMIT PREPARED and ROLLBACK PREPARED.
Fix a double-free error when processing dollar-quoted string literals in ecpg.
Fix pgbench to handle the combination of --connect and --rate options correctly.
Fix pgbench to honor the long-form option spelling --builtin, as per its documentation.
Fix pg_dump/pg_restore to correctly handle privileges for the public schema when using --clean option.
In pg_dump, fix incorrect schema and owner marking for comments and security labels of some types of database objects.
Fix typo in pg_dump's query for initial privileges of a procedural language.
Avoid emitting an invalid list file in pg_restore -l when SQL object names contain newlines.
Fix pg_upgrade to transfer comments and security labels attached to "large objects".
Improve error handling in contrib/adminpack's pg_file_write() function.
In contrib/dblink, avoid leaking the previous unnamed connection when establishing a new unnamed connection.
Fix contrib/pg_trgm's extraction of trigrams from regular expressions.
In contrib/postgres_fdw, allow join conditions that contain shippable extension-provided functions to be pushed to the remote server.
Support Tcl 8.6 in MSVC builds.
Sync our copy of the timezone library with IANA release tzcode2017b.
Update time zone data files to tzdata release 2017b for DST law changes in Chile, Haiti, and Mongolia, plus historical corrections for Ecuador, Kazakhstan, Liberia, and Spain. Switch to numeric abbreviations for numerous time zones in South America, the Pacific and Indian oceans, and some Asian and Middle Eastern countries.
Use correct daylight-savings rules for POSIX-style time zone names in MSVC builds.