Server
- Performance
+ Locking
+
+
+ Prevent non-key-field row updates from locking foreign key rows
+ (AlvaroAacute;lvaro Herrera, Marti Raudsepp, Alexander Shulgin,
+ Noah Misch and Andres Freund)
+
+
+
+ This improves concurrency and reduces the probability of deadlocks.
+ UPDATEs on non-key columns use the new SELECT FOR NO KEY UPDATE lock
+ type, and foreign key checks use the new SELECT FOR KEY SHARE lock mode.
+
+
+
+
+
+ Add cache of local locks (Jeff Janes)
+
+
+
+ This speeds lock release at statement completion in transactions
+ that hold many locks; it is particularly useful for pg_dump.
+
+
+
+
+
+
+
+
+ Indexes
+
+
+
+
+
+ Add SP-GiST support for range data types (Alexander Korotkov)
+
+
+
+
+
+ Allow unlogged GiST indexes (Jeevan Chalke)
+
+
+
+
+
+ Improve concurrency of hash indexes (Robert Haas)
+
+
+
+
+
+
+
+
+ Optimizer
+
+
+
+
+
+ Improve the ability to detect indexable prefixes in regular
+ expressions (Tom Lane)
+
+
+
+
+
+ Collect and use histograms of lower and upper bounds for range types
+ (Alexander Korotkov)
+
+
+
+
+
+ Reduce optimizer overhead by discarding plans with unneeded cheaper
+ startup costs (Tom Lane)
+
+
+
+
+
+ Improve optimizer cost estimation for index access (Tom Lane)
+
+
+
+
+
+
+
+
+ General Performance
+
+
+
+
+
+ Add COPY FREEZE option to avoid the overhead of later marking
+ tuples as committed (Simon Riggs, Jeff Davis)
+
+
+
Improve performance of NUMERIC calculations (Kyotaro Horiguchi)
@@ -76,13 +180,6 @@
-
-
- Add COPY FREEZE option to avoid the overhead of later marking
- tuples as committed (Simon Riggs, Jeff Davis)
-
-
-
Improve memory usage for in-memory sorts (Jeff Janes)
@@ -141,108 +238,52 @@
- Optimizer
+ Monitoring
- Reduce optimizer overhead by discarding plans with unneeded cheaper
- startup costs (Tom Lane)
+ Add optional ability to checksum data pages and report corruption
+ (Simon Riggs, Jeff Davis, Greg Smith)
+
+
+
+ The checksum option can be set during initdb.
- Collect and use histograms of lower and upper bounds for range types
- (Alexander Korotkov)
+ Allow pg_terminate_backend() to terminate other backends with
+ the same role (Dan Farina)
+
+
+
+ Previously, only superusers could terminate other sessions.
- Improve the ability to detect indexable prefixes in regular
- expressions (Tom Lane)
+ Allow the statistics collector to operate properly in cases where
+ the system clock goes backwards (Tom Lane)
+
+
+
+ Previously statistics collection would stop until the time again
+ reached the previously-stored latest time.
- Improve optimizer cost estimation for index access (Tom Lane)
-
-
-
-
-
-
-
-
- Indexes
-
-
-
-
-
- Reduce use of heavyweight locking inside hash AM.
-
-
-
-
-
- Improve concurrency of hash indexes (Robert Haas)
-
-
-
-
-
- Add SP-GiST support for range data types (Alexander Korotkov)
-
-
-
-
-
- Allow unlogged GiST indexes (Jeevan Chalke)
-
-
-
-
-
- Allow SP-GiST to support of the range adjacent operator (Alexander
- Korotkov)
-
-
-
-
-
-
-
-
- Locking
-
-
-
-
-
- Prevent non-key-field row updates from locking foreign key rows
- (AlvaroAacute;lvaro Herrera, Marti Raudsepp, Alexander Shulgin,
- Noah Misch and Andres Freund)
+ Add function to report the size of the GIN pending index insertion
+ list (Fujii Masao)
- This improves concurrency and reduces the probability of deadlocks.
- UPDATEs on non-key columns use the new SELECT FOR NO KEY UPDATE lock
- type, and foreign key checks use the new SELECT FOR KEY SHARE lock mode.
-
-
-
-
-
- Add cache of local locks (Jeff Janes)
-
-
-
- This speeds lock release at statement completion in transactions
- that hold many locks; it is particularly useful for pg_dump.
+ The function is pgstatginindex() in pgstattuple.
@@ -294,60 +335,6 @@
-
- Monitoring
-
-
-
-
-
- Allow the statistics collector to operate properly in cases where
- the system clock goes backwards (Tom Lane)
-
-
-
- Previously statistics collection would stop until the time again
- reached the previously-stored latest time.
-
-
-
-
-
- Add optional ability to checksum data pages and report corruption
- (Simon Riggs, Jeff Davis, Greg Smith)
-
-
-
- The checksum option can be set during initdb.
-
-
-
-
-
- Add function to report the size of the GIN pending index insertion
- list (Fujii Masao)
-
-
-
- The function is pgstatginindex() in pgstattuple.
-
-
-
-
-
- Allow pg_terminate_backend() to terminate other backends with
- the same role (Dan Farina)
-
-
-
- Previously, only superusers could terminate other sessions.
-
-
-
-
-
-
-
Server Settings
@@ -367,13 +354,20 @@
- Increase the maximum initdb-configured value for shared_buffers
- to 128MB (Robert Haas)
+ Allow the postmaster to listen on multiple Unix-domain sockets
+ (Honza Horak)
- This is the maximum value initdb attempts to set in
- postgresql.conf; the previous value was 32MB.
+ This renames configuration parameter unix_socket_directory to
+ unix_socket_directories, which accepts a list of directories.
+
+
+
+
+
+ Add configuration variable lock_timeout to limit lock wait duration
+ (Zoltán Böszörményi)
@@ -390,21 +384,13 @@
- Have "session id" in log_line_prefix (%c) always output four hex
- digits after the period (Bruce Momjian)
+ Increase the maximum initdb-configured value for shared_buffers
+ to 128MB (Robert Haas)
-
-
- Add configuration variable lock_timeout to limit lock wait duration
- (Zoltán Böszörményi)
-
-
-
-
-
- Remove the external PID file on postmaster exit (Peter Eisentraut)
+ This is the maximum value initdb attempts to set in
+ postgresql.conf; the previous value was 32MB.
@@ -427,15 +413,17 @@
+
- Allow the postmaster to listen on multiple Unix-domain sockets
- (Honza Horak)
+ Remove the external PID file on postmaster exit (Peter Eisentraut)
+
+
- This renames configuration parameter unix_socket_directory to
- unix_socket_directories, which accepts a list of directories.
+ Have "session id" in log_line_prefix (%c) always output four hex
+ digits after the period (Bruce Momjian) COMPATIBILITY
@@ -450,6 +438,18 @@
+
+
+ Allow a streaming replication standbys to follow a timeline switch (Heikki Linnakangas)
+
+
+
+ This allows streaming standbys to feed from newly-promoted slaves.
+ Previously slaves required access to a WAL archive directory to
+ accomplish this.
+
+
+
Add SQL functions pg_backup_in_progress() and pg_backup_start_time() (Darold Gilles)
@@ -485,18 +485,6 @@
-
-
- Allow a streaming replication standbys to follow a timeline switch (Heikki Linnakangas)
-
-
-
- This allows streaming standbys to feed from newly-promoted slaves.
- Previously slaves required access to a WAL archive directory to
- accomplish this.
-
-
-
Have pg_basebackup --write-recovery-conf output a minimal
@@ -678,6 +666,37 @@
+
+ CREATE TABLE>
+
+
+
+
+
+ No longer output messages about implicit index and sequence creation (Robert Haas)
+
+
+
+ These messages now appear with DEBUG1-level output.
+
+
+
+
+
+ Allow CREATE TABLE to succeed for a non-existent schema
+ (Bruce Momjian)
+
+
+
+ Previously, CREATE TABLE IF EXIST threw an error if the schema was
+ nonexistent.
+
+
+
+
+
+
+
Constraints
@@ -822,37 +841,6 @@
-
- CREATE TABLE>
-
-
-
-
-
- No longer output messages about implicit index and sequence creation (Robert Haas)
-
-
-
- These messages now appear with DEBUG1-level output.
-
-
-
-
-
- Allow CREATE TABLE to succeed for a non-existent schema
- (Bruce Momjian)
-
-
-
- Previously, CREATE TABLE IF EXIST threw an error if the schema was
- nonexistent.
-
-
-
-
-
-
-
@@ -1698,7 +1686,7 @@
- Allow pgbench to use scale values larger than 21474 (Greg Smith)
+ Allow pgbench to use a larger scale factor (Greg Smith)