diff --git a/doc/src/sgml/release-13.sgml b/doc/src/sgml/release-13.sgml index a15e48a5f11..9b7b10fd7a3 100644 --- a/doc/src/sgml/release-13.sgml +++ b/doc/src/sgml/release-13.sgml @@ -12,9 +12,9 @@ Overview - - Major enhancements in PostgreSQL 13 include: - + + Major enhancements in PostgreSQL 13 include: + @@ -26,9 +26,9 @@ - - The above items are explained in more detail in the sections below. - + + The above items are explained in more detail in the sections below. + @@ -36,227 +36,215 @@ Migration to Version 13 - - A dump/restore using or use of or logical replication is required for those - wishing to migrate data from any previous release. See for general information on migrating to new major - releases. - + + A dump/restore using or use of or logical replication is required for those + wishing to migrate data from any previous release. See for general information on migrating to new major + releases. + - - Version 13 contains a number of changes that may affect compatibility - with previous releases. Observe the following incompatibilities: - + + Version 13 contains a number of changes that may affect compatibility + with previous releases. Observe the following incompatibilities: + - + - - Change SIMILAR - TO ... ESCAPE NULL to return NULL - (Tom Lane) - - - - This new behavior matches the SQL specification. - Previously this caused the escape to be set to the default backslash - character. The previous behavior has been retained in old views - by keeping the original function unchanged. This also applies to - substring(text FROM pattern ESCAPE text). - + + Change SIMILAR + TO ... ESCAPE NULL to return NULL + (Tom Lane) + + + This new behavior matches the SQL specification. + Previously this caused the escape to be set to the default backslash + character. The previous behavior has been retained in old views + by keeping the original function unchanged. This also applies to + substring(text FROM pattern ESCAPE text). + - - - - Have jsonb_to_tsvector() - properly check "string" parameter (Dominik Czarnota) - + + + Have jsonb_to_tsvector() + properly check "string" parameter (Dominik Czarnota) + - - - - In , when using adjacent asterisks with braces, - e.g. ".*{2}.*{3}", properly interpret that as ".*{5}" (Nikita Glukhov) - + + + In , when using adjacent asterisks with braces, + e.g. ".*{2}.*{3}", properly interpret that as ".*{5}" (Nikita Glukhov) + - + - - Change the way non-default values affect concurrency - (Thomas Munro) - + + Change the way non-default values affect concurrency + (Thomas Munro) + - - Previously, this value was adjusted before effecting the number of - concurrent requests. This value is now used directly. Conversion of - old values to new ones can be done using: - + + Previously, this value was adjusted before effecting the number of + concurrent requests. This value is now used directly. Conversion of + old values to new ones can be done using: + SELECT round(sum(OLD / n::float)) FROM generate_series(1, OLD) s(n); - - + - - Prevent display of auxiliary processes in and - system views (Euler Taveira) - - - - Queries that join these views to and wish to see auxiliary processes - will need to use left joins. - + + Prevent display of auxiliary processes in and + system views (Euler Taveira) + + + Queries that join these views to and wish to see auxiliary processes + will need to use left joins. + - - - - Fix 's bt_metap() - to return more appropriate data types that are less likely to overflow - (Peter Geoghegan) - + + + Fix 's bt_metap() + to return more appropriate data types that are less likely to overflow + (Peter Geoghegan) + - + - - Rename some recovery-related wait - events (Fujii Masao) - - - - Rename RecoveryWalAll - to RecoveryWalStream - and RecoveryWalStream to - RecoveryRetrieveRetryInterval. - + + Rename some recovery-related wait + events (Fujii Masao) + + + Rename RecoveryWalAll + to RecoveryWalStream + and RecoveryWalStream to + RecoveryRetrieveRetryInterval. + - + - - Fix ALTER FOREIGN - TABLE ... RENAME COLUMN to return a more appropriate - command tag (Fujii Masao) - - - - Previously it returned ALTER TABLE, but now returns - ALTER FOREIGN TABLE. - + + Fix ALTER FOREIGN + TABLE ... RENAME COLUMN to return a more appropriate + command tag (Fujii Masao) + + + Previously it returned ALTER TABLE, but now returns + ALTER FOREIGN TABLE. + - + - - Fix ALTER - MATERIALIZED VIEW ... RENAME COLUMN to return a more - appropriate command tag (Fujii Masao) - - - - Previously it returned ALTER TABLE, but now returns - ALTER MATERIALIZED VIEW. - + + Fix ALTER + MATERIALIZED VIEW ... RENAME COLUMN to return a more + appropriate command tag (Fujii Masao) + + + Previously it returned ALTER TABLE, but now returns + ALTER MATERIALIZED VIEW. + - - - - Remove support for defining operator - classes using pre-PostgresSQL - 8.0 syntax (Daniel Gustafsson) - + + + Remove support for defining operator + classes using pre-PostgresSQL + 8.0 syntax (Daniel Gustafsson) + - - - - Remove support for defining foreign key - constraints using pre-PostgresSQL - 7.3 syntax (Daniel Gustafsson) - + + + Remove support for defining foreign key + constraints using pre-PostgresSQL + 7.3 syntax (Daniel Gustafsson) + - - - - Remove support for "opaque" pseudo-types used by - pre-PostgresSQL 7.3 servers (Daniel - Gustafsson) - + + + Remove support for "opaque" pseudo-types used by + pre-PostgresSQL 7.3 servers (Daniel + Gustafsson) + @@ -266,11 +254,11 @@ Changes - - Below you will find a detailed account of the changes between - PostgreSQL 13 and the previous major - release. - + + Below you will find a detailed account of the changes between + PostgreSQL 13 and the previous major + release. + Server @@ -280,115 +268,111 @@ - - + + - - Improve cases where pruning of partitions can happen - (Yuzuko Hosoya, Amit Langote, Álvaro Herrera) - + + Improve cases where pruning of partitions can happen + (Yuzuko Hosoya, Amit Langote, Álvaro Herrera) + + - + + - - + + Allow partitionwise + joins to happen in more cases (Ashutosh Bapat, Etsuro Fujita, + Amit Langote, Tom Lane) + - - Allow partitionwise - joins to happen in more cases (Ashutosh Bapat, Etsuro Fujita, - Amit Langote, Tom Lane) - + + For example, partitionwise joins can now happen between partitioned + tables even when their partition bounds do not match exactly. + + - - For example, partitionwise joins can now happen between partitioned - tables even when their partition bounds do not match exactly. - - + + - - + + Allow BEFORE row-level triggers on partitioned tables (Álvaro + Herrera) + - - Allow BEFORE row-level triggers on partitioned tables (Álvaro - Herrera) - + + These triggers cannot change which partition is the destination. + + - - These triggers cannot change which partition is the destination. - + + - + + Allow partitioned tables to be logically replicated via publications (Amit Langote) + - - + + Previously, partitions had to be replicated individually. Now + partitioned tables can be published explicitly causing all partitions + to be automatically published. Addition/removal of partitions from + partitioned tables are automatically added/removed from publications. + The CREATE + PUBLICATION option + publish_via_partition_root controls whether changes + to partitions are published as their own or their ancestor's. + + - - Allow partitioned tables to be logically replicated via publications (Amit Langote) - + + - - Previously, partitions had to be replicated individually. Now - partitioned tables can be published explicitly causing all partitions - to be automatically published. Addition/removal of partitions from - partitioned tables are automatically added/removed from publications. - The CREATE - PUBLICATION option - publish_via_partition_root controls whether changes - to partitions are published as their own or their ancestor's. - + + Allow logical replication into partitioned tables on subscribers + (Amit Langote) + - + + Previously, subscribers could only receive rows into non-partitioned + tables. + + - - + + - - Allow logical replication into partitioned tables on subscribers - (Amit Langote) - - - - Previously, subscribers could only receive rows into non-partitioned - tables. - - - - - - - - Allow ROW values - to be used as partitioning expressions (Amit Langote) - - - + + Allow ROW values + to be used as partitioning expressions (Amit Langote) + + @@ -399,112 +383,106 @@ - - + + - - More efficiently store duplicates in btree indexes - (Anastasia Lubennikova, Peter Geoghegan) - + + More efficiently store duplicates in btree indexes + (Anastasia Lubennikova, Peter Geoghegan) + - - This allows efficient btree indexing of low cardinality columns - by storing duplicate keys only once. Users upgrading with pg_upgrade - will need to use REINDEX to make use - of this feature. - + + This allows efficient btree indexing of low cardinality columns + by storing duplicate keys only once. Users upgrading with pg_upgrade + will need to use REINDEX to make use + of this feature. + + - + + - - + + Allow GiST and SP-GiST indexes for box/point distance lookups (Nikita + Glukhov) + + - - Allow GiST and SP-GiST indexes for box/point distance lookups (Nikita - Glukhov) - + + - + + Allow GIN indexes to + more efficiently handle NOT restrictions (Nikita + Glukhov, Alexander Korotkov, Tom Lane, Julien Rouhaud) + + - - + + - - Allow GIN indexes to - more efficiently handle NOT restrictions (Nikita - Glukhov, Alexander Korotkov, Tom Lane, Julien Rouhaud) - + + Allow index operator classes + to take parameters (Nikita Glukhov) + + - + + - - + + Allow CREATE INDEX to specify the GiST signature + length and maximum number of integer ranges (Nikita Glukhov) + - - Allow index operator classes - to take parameters (Nikita Glukhov) - + + Indexes created on four and eight-byte integer + array, tsvector, + , , and columns can now control these GiST index parameters, + rather than using the defaults. + + - + + - - + + Prevent indexes that use non-default collations from being added as a table's unique or primary + key constraint (Tom Lane) + - - Allow CREATE INDEX to specify the GiST signature - length and maximum number of integer ranges (Nikita Glukhov) - - - - Indexes created on four and eight-byte integer - array, tsvector, - , , and columns can now control these GiST index parameters, - rather than using the defaults. - - - - - - - - - Prevent indexes that use non-default collations from being added as a table's unique or primary - key constraint (Tom Lane) - - - - The index and column collations must now match so the index's - uniqueness matches the column's uniqueness. - - - + + The index and column collations must now match so the index's + uniqueness matches the column's uniqueness. + + @@ -516,89 +494,83 @@ - - + + - - Improve the optimizer's selectivity estimation for - containment/match operators (Tom Lane) - + + Improve the optimizer's selectivity estimation for + containment/match operators (Tom Lane) + + - + + - - + + Allow setting statistics target + for extended statistics + (Tomas Vondra) + - - Allow setting statistics target - for extended statistics - (Tomas Vondra) - + + This is controlled with the new command option ALTER + STATISTICS ... SET STATISTICS. Previously this was computed + based on more general statistics target settings. + + - - This is controlled with the new command option ALTER - STATISTICS ... SET STATISTICS. Previously this was computed - based on more general statistics target settings. - + + - + + Allow use of multiple extended statistics objects in a single query + (Tomas Vondra) + + - - + + - - Allow use of multiple extended statistics objects in a single query - (Tomas Vondra) - + + Allow use of extended statistics objects for OR clauses and IN/ANY constant + lists (Pierre Ducroquet, Tomas Vondra) + + - - - - - - - Allow use of extended statistics objects for OR clauses and IN/ANY constant - lists (Pierre Ducroquet, Tomas Vondra) - - - - - - - - - Allow functions in FROM clauses to be moved to their - reference sites if they evaluate to constants (Alexander Kuzmenkov, - Aleksandr Parfenov) - - - + + + + Allow functions in FROM clauses to be moved to their + reference sites if they evaluate to constants (Alexander Kuzmenkov, + Aleksandr Parfenov) + + @@ -609,251 +581,234 @@ - - + + - - Implement incremental - sorting (James Coleman, Alexander Korotkov, Tomas Vondra) - + + Implement incremental + sorting (James Coleman, Alexander Korotkov, Tomas Vondra) + - - If a result is already sorted by several leading keys, this - allows for batch sorting of additional trailing keys because the - previous keys are already equal. This is controlled by . - + + If a result is already sorted by several leading keys, this + allows for batch sorting of additional trailing keys because the + previous keys are already equal. This is controlled by . + + - + + - - + + Improve the performance of sorting inet values (Brandur Leach) + + - - Improve the performance of sorting inet values (Brandur Leach) - + + - + + Allow hash aggregation + to use disk storage for large aggregation result sets (Jeff Davis) + - - + + Previously, hash aggregation was avoided if it was expected to use + more than memory. This is controlled + by . + + - - Allow hash aggregation - to use disk storage for large aggregation result sets (Jeff Davis) - + + - - Previously, hash aggregation was avoided if it was expected to use - more than memory. This is controlled - by . - + + Allow grouping sets to + use hash aggregation with disk storage for large grouping set results + (Jeff Davis) + - + + Previously, hash aggregation was avoided if it was expected to use + more than memory. This is controlled + by . + + - - + + - - Allow grouping sets to - use hash aggregation with disk storage for large grouping set results - (Jeff Davis) - + + Allow inserts to trigger autovacuum + activity (Laurenz Albe, Darafei Praliaskouski) + - - Previously, hash aggregation was avoided if it was expected to use - more than memory. This is controlled - by . - + + This new behavior reduces the work necessary when the table needs to + be frozen and allows pages to be set as all-visible. All-visible pages + allow index-only scans to access fewer heap rows. + + - + + - - + + Add to control I/O + concurrency for maintenance operations (Thomas Munro) + + - - Allow inserts to trigger autovacuum - activity (Laurenz Albe, Darafei Praliaskouski) - + + - - This new behavior reduces the work necessary when the table needs to - be frozen and allows pages to be set as all-visible. All-visible pages - allow index-only scans to access fewer heap rows. - + + Allow skipping of WAL for full table writes if is minimal (Kyotaro + Horiguchi) + - + + Relations larger than + will have their files fsync'ed rather than generating + WAL. Previously this was done only for + COPY operations, but the implementation had a bug + that could cause data loss during crash recovery. + + - - + + - - Add to control I/O - concurrency for maintenance operations (Thomas Munro) - + + Enable Unix-domain sockets + support on Windows (Peter Eisentraut) + + - + + - - + + Improve the performance when replaying DROP DATABASE + commands when many tablespaces are in use (Fujii Masao) + + - - Allow skipping of WAL for full table writes if is minimal (Kyotaro - Horiguchi) - + + - - Relations larger than - will have their files fsync'ed rather than generating - WAL. Previously this was done only for - COPY operations, but the implementation had a bug - that could cause data loss during crash recovery. - - + + Improve performance for truncation + of very large relations (Kirk Jamison) + + - + + - - + + Improve speed of TOAST decompression + and the retrieval of only the leading bytes of TOAST + values (Binguo Bao, Andrey Borodin) + - - Enable Unix-domain sockets - support on Windows (Peter Eisentraut) - + + Previously, TOAST values were fully fetched and + only the requested leading bytes were decompressed and returned. + Now, only the requested bytes are fetched. + + - + + - - + + Improve performance of LISTEN/NOTIFY + (Martijn van Oosterhout) + + - - Improve the performance when replaying DROP DATABASE - commands when many tablespaces are in use (Fujii Masao) - + + - + + Improve the efficiency of removing duplicate NOTIFY events (Tom Lane) + + - - + + - - Improve performance for truncation - of very large relations (Kirk Jamison) - + + Use lookup tables to speed up integer to text conversion (David Fetter) + + - - - - - - - Improve speed of TOAST decompression - and the retrieval of only the leading bytes of TOAST - values (Binguo Bao, Andrey Borodin) - - - - Previously, TOAST values were fully fetched and - only the requested leading bytes were decompressed and returned. - Now, only the requested bytes are fetched. - - - - - - - - - Improve performance of LISTEN/NOTIFY - (Martijn van Oosterhout) - - - - - - - - - Improve the efficiency of removing duplicate NOTIFY events (Tom Lane) - - - - - - - - - Use lookup tables to speed up integer to text conversion (David Fetter) - - - - - - - - - Reduce memory usage for query strings that contain multiple - SQL statements (Amit Langote) - - - + + + + Reduce memory usage for query strings that contain multiple + SQL statements (Amit Langote) + + @@ -864,131 +819,124 @@ - - + + - - Allow EXPLAIN, - , autovacuum, and to track WAL usage - statistics (Kirill Bychik, Julien Rouhaud) - + + Allow EXPLAIN, + , autovacuum, and to track WAL usage + statistics (Kirill Bychik, Julien Rouhaud) + + - + + - - + + Allow a sample of statements to be logged (Adrien Nayrat) + - - Allow a sample of statements to be logged (Adrien Nayrat) - + + A ratio of statements + taking over duration + will be logged. + + - - A ratio of statements - taking over duration - will be logged. - + + - + + Add the backend type to csvlog and optionally log output (Peter Eisentraut) + + - - + + - - Add the backend type to csvlog and optionally log output (Peter Eisentraut) - + + Improve control of prepared statement parameter logging (Alexey + Bashtanov, Álvaro Herrera) + - + + The GUC setting controls the maximum length + of parameter values output during statement non-error logging, and + does the + same for error statement logging. Previously, prepared statement + parameters were not logged during errors. + + - - + + - - Improve control of prepared statement parameter logging (Alexey - Bashtanov, Álvaro Herrera) - + + Make vacuum buffer counters 64-bits + wide to avoid overflow (Álvaro Herrera) + + - - The GUC setting controls the maximum length - of parameter values output during statement non-error logging, and - does the - same for error statement logging. Previously, prepared statement - parameters were not logged during errors. - + + - + + Allow function call backtraces of errors to be logged (Peter + Eisentraut, Álvaro Herrera) + - - + + Server variable specifies + which C functions should generate backtraces on error. + + - - Make vacuum buffer counters 64-bits - wide to avoid overflow (Álvaro Herrera) - + + - + + Add min() and + max() aggregates for pg_lsn (Fabrízio + de Royes Mello) + - - - - - Allow function call backtraces of errors to be logged (Peter - Eisentraut, Álvaro Herrera) - - - - Server variable specifies - which C functions should generate backtraces on error. - - - - - - - - - Add min() and - max() aggregates for pg_lsn (Fabrízio - de Royes Mello) - - - - This is useful for monitoring queries. - - - + + This is useful for monitoring queries. + + @@ -999,109 +947,102 @@ - - + + - - Add leader_pid to to report parallel worker ownership - (Julien Rouhaud) - + + Add leader_pid to to report parallel worker ownership + (Julien Rouhaud) + + - + + - - + + Add system view pg_stat_progress_basebackup + to report the progress of streaming base backups (Fujii Masao) + + - - Add system view pg_stat_progress_basebackup - to report the progress of streaming base backups (Fujii Masao) - + + - + + Add system view pg_stat_progress_analyze + to report analyze progress + (Álvaro Herrera, Tatsuro Yamada, Vinayak Pokale) + + - - + + - - Add system view pg_stat_progress_analyze - to report analyze progress - (Álvaro Herrera, Tatsuro Yamada, Vinayak Pokale) - + + Add columns to the pg_stat_replication + system view to report how much logical decoding information has been + spilled to disk (Tomas Vondra) + + - + + - - + + Add system view pg_shmem_allocations + to display shared memory usage (Andres Freund, Robert Haas) + + - - Add columns to the pg_stat_replication - system view to report how much logical decoding information has been - spilled to disk (Tomas Vondra) - + + - + + Create pg_stat_slru + system view to monitor internal SLRU caches + (Tomas Vondra) + + - - + + - - Add system view pg_shmem_allocations - to display shared memory usage (Andres Freund, Robert Haas) - + + Allow to be set up + to 1MB (Vyacheslav Makarov) + - - - - - - - Create pg_stat_slru - system view to monitor internal SLRU caches - (Tomas Vondra) - - - - - - - - - Allow to be set up - to 1MB (Vyacheslav Makarov) - - - - The previous maximum was 100kB. - - - + + The previous maximum was 100kB. + + @@ -1112,75 +1053,70 @@ - - + + - - Add wait event for posix_fallocate() (Thomas - Munro) - + + Add wait event for posix_fallocate() (Thomas + Munro) + + - + + - - + + Add wait event VacuumDelay to report on cost-based vacuum delay + (Justin Pryzby) + + - - Add wait event VacuumDelay to report on cost-based vacuum delay - (Justin Pryzby) - + + - + + Add wait events for WAL archive and recovery pause + (Fujii Masao) + - - + + The new events are BackupWaitWalArchive and RecoveryPause. + + - - Add wait events for WAL archive and recovery pause - (Fujii Masao) - + + - - The new events are BackupWaitWalArchive and RecoveryPause. - + + Add wait events RecoveryConflictSnapshot and + RecoveryConflictTablespace to monitor recovery conflicts (Masahiko + Sawada) + + - + + - - - - - Add wait events RecoveryConflictSnapshot and - RecoveryConflictTablespace to monitor recovery conflicts (Masahiko - Sawada) - - - - - - - - - Improve performance of wait events on BSD-based - systems (Thomas Munro) - - - + + Improve performance of wait events on BSD-based + systems (Thomas Munro) + + @@ -1191,40 +1127,37 @@ - - + + - - Only allow superusers to view the setting (Insung Moon) - + + Only allow superusers to view the setting (Insung Moon) + - - This was changed as a security precaution. - + + This was changed as a security precaution. + + - + + - - - - - Change the default minimum TLS version from 1.0 - to 1.2 (Peter Eisentraut) - - - - This is controlled by . - - - + + Change the default minimum TLS version from 1.0 + to 1.2 (Peter Eisentraut) + + + This is controlled by . + + @@ -1235,57 +1168,53 @@ - - + + - - Tighten rules on which utility commands are possible in mode (Robert Haas) - + + Tighten rules on which utility commands are possible in mode (Robert Haas) + - - This also increases the number of utility commands that can run in - parallel queries. - + + This also increases the number of utility commands that can run in + parallel queries. + + - + + - - + + Allow to be changed + after server start (Peter Eisentraut) + + - - Allow to be changed - after server start (Peter Eisentraut) - + + - - - - - - - Disallow non-superusers from modifying system tables when is set (Peter Eisentraut) - - - - Previously, if - was set at server start, non-superusers could issue - INSERT/UPDATE/DELETE - commands on system tables. - - - + + Disallow non-superusers from modifying system tables when is set (Peter Eisentraut) + + + Previously, if + was set at server start, non-superusers could issue + INSERT/UPDATE/DELETE + commands on system tables. + + @@ -1298,132 +1227,125 @@ - - + + - - Allow streaming replication configuration settings to be changed by - reload (Sergei Kornilov) - + + Allow streaming replication configuration settings to be changed by + reload (Sergei Kornilov) + - - Previously, a server restart was required to change - and . - + + Previously, a server restart was required to change + and . + + - + + - - + + Allow WAL receivers use a temporary replication slot + if a permanent one is not specified (Peter Eisentraut, Sergei Kornilov) + - - Allow WAL receivers use a temporary replication slot - if a permanent one is not specified (Peter Eisentraut, Sergei Kornilov) - + + This behavior can be enabled using . + + - - This behavior can be enabled using . - + + - + + Allow replication slot storage to be limited by (Kyotaro Horiguchi) + - - + + Replication slots that exceed this value are invalidated. + + - - Allow replication slot storage to be limited by (Kyotaro Horiguchi) - + + - - Replication slots that exceed this value are invalidated. - + + Allow standby promotion + to cancel any requested pause (Fujii Masao) + - + + Previously, promotion could not happen while the standby was in + paused state. + + - - + + - - Allow standby promotion - to cancel any requested pause (Fujii Masao) - + + Generate an error if recovery does not reach the specified recovery target + (Leif Gunnar Erlandsen, Peter Eisentraut) + - - Previously, promotion could not happen while the standby was in - paused state. - + + Previously, the end of the WAL would promote the + standby, even if the target was not reached. + + - + + - - + + Allow control over how much memory is used by logical decoding before + it is spilled to disk (Tomas Vondra, Dilip Kumar, Amit Kapila) + - - Generate an error if recovery does not reach the specified recovery target - (Leif Gunnar Erlandsen, Peter Eisentraut) - + + This is controlled by . + + - - Previously, the end of the WAL would promote the - standby, even if the target was not reached. - + + - + + Allow WAL recovery to continue even if invalid + pages are referenced (Fujii Masao) + - - - - - Allow control over how much memory is used by logical decoding before - it is spilled to disk (Tomas Vondra, Dilip Kumar, Amit Kapila) - - - - This is controlled by . - - - - - - - - - Allow WAL recovery to continue even if invalid - pages are referenced (Fujii Masao) - - - - This is enabled using . - - - + + This is enabled using . + + @@ -1434,219 +1356,205 @@ - - + + - - Allow VACUUM - to process indexes in parallel (Masahiko Sawada, Amit Kapila) - + + Allow VACUUM + to process indexes in parallel (Masahiko Sawada, Amit Kapila) + - - The new PARALLEL option controls this. - + + The new PARALLEL option controls this. + + - + + - - + + Allow FETCH FIRST + to use WITH TIES to return any additional rows + that match the last result row (Surafel Temesgen) + + - - Allow FETCH FIRST - to use WITH TIES to return any additional rows - that match the last result row (Surafel Temesgen) - + + - + + Report planning-time buffer usage in EXPLAIN's + BUFFER output (Julien Rouhaud) + + - - + + - - Report planning-time buffer usage in EXPLAIN's - BUFFER output (Julien Rouhaud) - + + Have CREATE TABLE + LIKE propagate CHECK's NO + INHERIT property to created tables (Ildar Musin, Chris + Travers) + + - + + - - + + When using LOCK + TABLE on a partitioned table, do not check permissions + on the child tables (Amit Langote) + + - - Have CREATE TABLE - LIKE propagate CHECK's NO - INHERIT property to created tables (Ildar Musin, Chris - Travers) - + + - + + Allow OVERRIDING USER + VALUE on inserts into identity columns (Dean Rasheed) + + - - + + - - When using LOCK - TABLE on a partitioned table, do not check permissions - on the child tables (Amit Langote) - + + Add ALTER + TABLE clause DROP EXPRESSION + to remove generated properties from columns (Peter Eisentraut) + + - + + - - + + Fix bugs in ALTER TABLE when later clauses overlap + changes made by earlier clauses in the same command (Tom Lane) + + - - Allow OVERRIDING USER - VALUE on inserts into identity columns (Dean Rasheed) - + + - + + Add ALTER VIEW + syntax to rename view columns (Fujii Masao) + - - + + This was previously possible only using ALTER TABLE RENAME + COLUMN. + + - - Add ALTER - TABLE clause DROP EXPRESSION - to remove generated properties from columns (Peter Eisentraut) - + + - + + Add ALTER TYPE + options useful for extensions, like TOAST and I/O + functions control (Tomas Vondra, Tom Lane) + + - - + + - - Fix bugs in ALTER TABLE when later clauses overlap - changes made by earlier clauses in the same command (Tom Lane) - + + Add CREATE + DATABASE LOCALE option (Peter + Eisentraut) + - + + This combines existing options LC_COLLATE and + LC_CTYPE into a single option. + + - - + + - - Add ALTER VIEW - syntax to rename view columns (Fujii Masao) - + + Allow DROP + DATABASE to disconnect users so drop succeeds (Pavel + Stehule, Amit Kapila) + - - This was previously possible only using ALTER TABLE RENAME - COLUMN. - + + This is enabled by WITH FORCE. + + - + + - - + + Add C structure member tg_updatedcols + to record updated columns to C triggers (Peter Eisentraut) + + - - Add ALTER TYPE - options useful for extensions, like TOAST and I/O - functions control (Tomas Vondra, Tom Lane) - + + - + + Add FOREIGN to ALTER statements, + if appropriate (Luis Carril) + - - - - - Add CREATE - DATABASE LOCALE option (Peter - Eisentraut) - - - - This combines existing options LC_COLLATE and - LC_CTYPE into a single option. - - - - - - - - - Allow DROP - DATABASE to disconnect users so drop succeeds (Pavel - Stehule, Amit Kapila) - - - - This is enabled by WITH FORCE. - - - - - - - - - Add C structure member tg_updatedcols - to record updated columns to C triggers (Peter Eisentraut) - - - - - - - - - Add FOREIGN to ALTER statements, - if appropriate (Luis Carril) - - - - WHAT IS THIS ABOUT? - - - + + WHAT IS THIS ABOUT? + + @@ -1657,104 +1565,97 @@ - - + + - - Add polymorphic data types for use by functions requiring compatible - arguments (Pavel Stehule) - + + Add polymorphic data types for use by functions requiring compatible + arguments (Pavel Stehule) + - - The new data types are anycompatible, - anycompatiblearray, anycompatiblenonarray, and anycompatiblerange. - + + The new data types are anycompatible, + anycompatiblearray, anycompatiblenonarray, and anycompatiblerange. + + - + + - - + + Add SQL data type xid8 to expose FullTransactionId + (Thomas Munro) + - - Add SQL data type xid8 to expose FullTransactionId - (Thomas Munro) - + + The xid data type is only four bytes so does not show the transaction + epoch. + + - - The xid data type is only four bytes so does not show the transaction - epoch. - + + - + + Add data type regcollation and + helper functions for system collations (Julien Rouhaud) + + - - + + - - Add data type regcollation and - helper functions for system collations (Julien Rouhaud) - + + Use the glibc version in some cases as the collation version (Thomas Munro) + - + + If the glibc version changes, a warning will be issued when a + mismatching collation is used. + + - - + + - - Use the glibc version in some cases as the collation version (Thomas Munro) - + + Add support for collation versions on Windows (Thomas Munro) + + - - If the glibc version changes, a warning will be issued when a - mismatching collation is used. - + + - - - - - - - Add support for collation versions on Windows (Thomas Munro) - - - - - - - - - Allow ROW values - values to have their members extracted with suffix notation (Tom Lane) - - - - For example, (ROW(4, 5.0)).f1 returns 4. - - - + + Allow ROW values + values to have their members extracted with suffix notation (Tom Lane) + + + For example, (ROW(4, 5.0)).f1 returns 4. + + @@ -1765,302 +1666,285 @@ - - + + - - Add alternate version of jsonb_setI() - with special NULL handling (Andrew Dunstan) - + + Add alternate version of jsonb_setI() + with special NULL handling (Andrew Dunstan) + - - The new function, jsonb_set_lax(), allows null - new values to either set the specified key to JSON - null, delete the key, raise exception, or ignore the operation. - IS 'return_target' CLEAR? - + + The new function, jsonb_set_lax(), allows null + new values to either set the specified key to JSON + null, delete the key, raise exception, or ignore the operation. + IS 'return_target' CLEAR? + + - + + - - + + Add jsonpath .datetime() + method (Nikita Glukhov, Teodor Sigaev, Oleg Bartunov, Alexander + Korotkov) + - - Add jsonpath .datetime() - method (Nikita Glukhov, Teodor Sigaev, Oleg Bartunov, Alexander - Korotkov) - + + This allows json values to be converted to timestamps, which can + then be processed in jsonpath expressions. This also adds jsonpath + functions that support time zone-aware output. + + - - This allows json values to be converted to timestamps, which can - then be processed in jsonpath expressions. This also adds jsonpath - functions that support time zone-aware output. - + + - + + Add SQL functions NORMALIZE() + to normalize Unicode strings, and IS + NORMALIZED to check for normalization (Peter + Eisentraut) + + - - + + - - Add SQL functions NORMALIZE() - to normalize Unicode strings, and IS - NORMALIZED to check for normalization (Peter - Eisentraut) - + + Allow Unicode + escapes, e.g., E'\u####', U&'\####', to specify any + character available in the database encoding, even when the database + encoding is not UTF-8 (Tom Lane) + - + + The Unicode characters must be available in the database encoding. + + - - + + - - Allow Unicode - escapes, e.g., E'\u####', U&'\####', to specify any - character available in the database encoding, even when the database - encoding is not UTF-8 (Tom Lane) - + + Allow to_date() + and to_timestamp() to recognize non-English + month/day names (Juan José Santamaría Flecha, Tom Lane) + - - The Unicode characters must be available in the database encoding. - + + The names recognized are the same as those output by to_char() + with the same format codes. + + - + + - - + + Add format specifications FF1-FF6 to control display of 1-6 subsecond + digits (Alexander Korotkov, Nikita Glukhov, Teodor Sigaev, Oleg + Bartunov) + - - Allow to_date() - and to_timestamp() to recognize non-English - month/day names (Juan José Santamaría Flecha, Tom Lane) - + + These patterns can be used by to_char(), + to_timestamp(), and jsonpath's + .datetime(). + + - - The names recognized are the same as those output by to_char() - with the same format codes. - + + - + + Add SSSSS time format specification as an + SQL standard alias for SSSS + (Nikita Glukhov, Alexander Korotkov) + + - - + + - - Add format specifications FF1-FF6 to control display of 1-6 subsecond - digits (Alexander Korotkov, Nikita Glukhov, Teodor Sigaev, Oleg - Bartunov) - + + Add function gen_random_uuid() + to generate version 4 UUIDs (Peter Eisentraut) + - - These patterns can be used by to_char(), - to_timestamp(), and jsonpath's - .datetime(). - + + Previously UUID generation functions were only + available external modules or were installed. + + - + + - - + + Add greatest-common-denominator (gcd) and + least-common-multiple (lcm) functions (Vik Fearing) + + - - Add SSSSS time format specification as an - SQL standard alias for SSSS - (Nikita Glukhov, Alexander Korotkov) - + + - + + Improve the performance and accuracy of square root and natural log + (ln) output (Dean Rasheed) + + - - + + - - Add function gen_random_uuid() - to generate version 4 UUIDs (Peter Eisentraut) - + + Add function min_scale() + that returns the number of digits to the right the decimal point + that is required to represent the numeric value with full precision + (Pavel Stehule) + + - - Previously UUID generation functions were only - available external modules or were installed. - + + - + + Add function trim_scale() + to reduce the scale of a number by removing trailing zeros (Pavel + Stehule) + + - - + + - - Add greatest-common-denominator (gcd) and - least-common-multiple (lcm) functions (Vik Fearing) - + + Add commutators of distance + operators (Nikita Glukhov) + - + + For example, previously only point <-> line was supported, + now line <-> point works too. + + - - + + - - Improve the performance and accuracy of square root and natural log - (ln) output (Dean Rasheed) - + + Create xid8 versions of all transaction id functions + (Thomas Munro) + - + + The old function names were kept for backward compatibility. DO WE + HAVE NEW NAMES? + + - - + + - - Add function min_scale() - that returns the number of digits to the right the decimal point - that is required to represent the numeric value with full precision - (Pavel Stehule) - + + Allow get_bit() + and set_bit() to set bits beyond 256MB of bytea + data (Movead Li) + + - + + - - + + Allow advisory-lock + functions to be used in some parallel operations (Tom Lane) + + - - Add function trim_scale() - to reduce the scale of a number by removing trailing zeros (Pavel - Stehule) - + + - + + Add the ability to remove an object's dependency on an extension + (Álvaro Herrera) + - - - - - Add commutators of distance - operators (Nikita Glukhov) - - - - For example, previously only point <-> line was supported, - now line <-> point works too. - - - - - - - - - Create xid8 versions of all transaction id functions - (Thomas Munro) - - - - The old function names were kept for backward compatibility. DO WE - HAVE NEW NAMES? - - - - - - - - - Allow get_bit() - and set_bit() to set bits beyond 256MB of bytea - data (Movead Li) - - - - - - - - - Allow advisory-lock - functions to be used in some parallel operations (Tom Lane) - - - - - - - - - Add the ability to remove an object's dependency on an extension - (Álvaro Herrera) - - - - The object can be a function, materialized view, index, or trigger. - The syntax is ALTER .. NO DEPENDS ON. - - - + + The object can be a function, materialized view, index, or trigger. + The syntax is ALTER .. NO DEPENDS ON. + + @@ -2072,32 +1956,29 @@ - - + + - - Improve performance of simple PL/pgSQL expressions (Tom Lane, - Amit Langote) - + + Improve performance of simple PL/pgSQL expressions (Tom Lane, + Amit Langote) + + - - - - - - - Improve the performance of PL/pgSQL functions that use immutable - expressions (Konstantin Knizhnik) - - - + + + + Improve the performance of PL/pgSQL functions that use immutable + expressions (Konstantin Knizhnik) + + @@ -2108,90 +1989,84 @@ - - + + - - Allow libpq clients to require channel binding (Jeff Davis) - + + Allow libpq clients to require channel binding (Jeff Davis) + - - Using the libpq connection parameter channel_binding - forces the other end of the TLS connection to prove - it knows the user's password. This prevents man-in-the-middle attacks. - + + Using the libpq connection parameter channel_binding + forces the other end of the TLS connection to prove + it knows the user's password. This prevents man-in-the-middle attacks. + + - + + - - + + Add libpq connection parameters to control the min/max + TLS version (Daniel Gustafsson) + - - Add libpq connection parameters to control the min/max - TLS version (Daniel Gustafsson) - + + The settings are and . + + - - The settings are and . - + + - + + Tighten line length and comment detection in .pgpass files (Fujii Masao) + + - - + + - - Tighten line length and comment detection in .pgpass files (Fujii Masao) - + + Allow specification of passwords to unlock client certificates (Craig + Ringer, Andrew Dunstan) + - + + This is specified by the + connection option. + + - - - - - Allow specification of passwords to unlock client certificates (Craig - Ringer, Andrew Dunstan) - - - - This is specified by the - connection option. - - - - - - - - - Allow DER-encoded client certificates (Craig Ringer, - Andrew Dunstan) - - - + + + + Allow DER-encoded client certificates (Craig Ringer, + Andrew Dunstan) + + @@ -2205,154 +2080,146 @@ - - + + - - Add the transaction status (%x) to the default psql - prompts (Vik Fearing) - + + Add the transaction status (%x) to the default psql + prompts (Vik Fearing) + + - + + - - + + Allow the secondary psql prompt to be same + number of spaces as the primary prompt (Thomas Munro) + - - Allow the secondary psql prompt to be same - number of spaces as the primary prompt (Thomas Munro) - + + This is accomplished by setting PROMPT2 to %w. + + - - This is accomplished by setting PROMPT2 to %w. - + + - + + Allow \g and \gx to + change any \pset output + options for a single command (Tom Lane) + - - + + This allows syntax like \g (expand=on), which is equivalent to \gx. + + - - Allow \g and \gx to - change any \pset output - options for a single command (Tom Lane) - + + - - This allows syntax like \g (expand=on), which is equivalent to \gx. - + + Add psql commands to report operator + classes and operator families (Sergey Cherkashin, Nikita Glukhov, + Alexander Korotkov) + - + + The new commands are \dAc, \dAf, \dAo, and \dAp. + + - - + + - - Add psql commands to report operator - classes and operator families (Sergey Cherkashin, Nikita Glukhov, - Alexander Korotkov) - + + Show table persistence in psql's \dt+ and related commands + (David Fetter) + - - The new commands are \dAc, \dAf, \dAo, and \dAp. - - + + In verbose mode, the table/index/view shows if the object is permanent, + temporary, or unlogged. + + - - + + - - Show table persistence in psql's \dt+ and related commands - (David Fetter) - + + Improve output of psql \d for TOAST + tables (Justin Pryzby) + + - - In verbose mode, the table/index/view shows if the object is permanent, - temporary, or unlogged. - + + - + + Adjust display of psql's \e query (Tom Lane) + - - + + When exiting the editor, if the query doesn't end with a semicolon + or \g, the query buffer contents will now be displayed. + + - - Improve output of psql \d for TOAST - tables (Justin Pryzby) - + + - + + Add \warn command to + psql (David Fetter) + - - + + This is like \echo except that the text is sent to stderr instead + of stdout. + + - - Adjust display of psql's \e query (Tom Lane) - + + - - When exiting the editor, if the query doesn't end with a semicolon - or \g, the query buffer contents will now be displayed. - - - - - - - - - Add \warn command to - psql (David Fetter) - - - - This is like \echo except that the text is sent to stderr instead - of stdout. - - - - - - - - - Add the PostgreSQL home page to command-line - output (Peter Eisentraut) - - - + + Add the PostgreSQL home page to command-line + output (Peter Eisentraut) + + @@ -2363,60 +2230,56 @@ - - + + - - Allow pgbench to partition its 'accounts' table (Fabien Coelho) - + + Allow pgbench to partition its 'accounts' table (Fabien Coelho) + - - This allows performance testing of partitioning. - + + This allows performance testing of partitioning. + + - + + - - + + Add pgbench command \aset, which behaves like \gset, but for multiple + queries (Fabien Coelho) + + - - Add pgbench command \aset, which behaves like \gset, but for multiple - queries (Fabien Coelho) - + + - + + Allow pgbench to generate its data server-side, rather than client side + (Fabien Coelho) + + - - + + - - Allow pgbench to generate its data server-side, rather than client side - (Fabien Coelho) - - - - - - - - - Allow pgbench to dump script contents using - (Fabien Coelho) - - - + + Allow pgbench to dump script contents using + (Fabien Coelho) + + @@ -2429,234 +2292,221 @@ - - + + - - Generate backup manifests for base backups, and verify them (Robert - Haas) - + + Generate backup manifests for base backups, and verify them (Robert + Haas) + - - A new tool pg_verifybackup" - can verify backups. - + + A new tool pg_verifybackup" + can verify backups. + + - + + - - + + Have pg_basebackup + estimate the total backup size by default (Fujii Masao) + - - Have pg_basebackup - estimate the total backup size by default (Fujii Masao) - + + This computation allows pg_stat_progress_analyze + to show progress, and can be disabled by using the + option. Previously, this + computation happened only if was used. + + - - This computation allows pg_stat_progress_analyze - to show progress, and can be disabled by using the - option. Previously, this - computation happened only if was used. - + + - + + Add pg_rewind + option to configure standbys (Paul Guo, Jimmy Yih, Ashwin Agrawal) + - - + + This matches pg_basebackup's + option. + + - - Add pg_rewind - option to configure standbys (Paul Guo, Jimmy Yih, Ashwin Agrawal) - + + - - This matches pg_basebackup's - option. - + + Allow pg_rewind to use the target + cluster's to retrieve needed + WAL (Alexey Kondratov) + - + + This is enabled using the + / option. + + - - + + - - Allow pg_rewind to use the target - cluster's to retrieve needed - WAL (Alexey Kondratov) - + + Have pg_rewind automatically run crash + recovery before rewinding (Paul Guo, Jimmy Yih, Ashwin Agrawal) + - - This is enabled using the - / option. - + + This can be disabled by using . + + - + + - - + + Increase PREPARE + TRANSACTION information reported by + pg_waldump (Fujii Masao) + + - - Have pg_rewind automatically run crash - recovery before rewinding (Paul Guo, Jimmy Yih, Ashwin Agrawal) - + + - - This can be disabled by using . - + + Add pg_waldump + option to suppress non-error output (Andres + Freund, Robert Haas) + + - + + - - + + Allow pg_dump + to dump data from foreign + servers (Luis Carril) + + - - Increase PREPARE - TRANSACTION information reported by - pg_waldump (Fujii Masao) - + + - + + Allow vacuum commands run by vacuumdb to operate in parallel mode + (Masahiko Sawada) + - - + + This is enabled with the new option. + + - - Add pg_waldump - option to suppress non-error output (Andres - Freund, Robert Haas) - + + - + + Allow reindexdb to operate in + parallel (Julien Rouhaud) + - - + + Parallel mode is enabled with the new option. + + - - Allow pg_dump - to dump data from foreign - servers (Luis Carril) - + + - + + Allow dropdb to force disconnections + so the drop succeeds (Pavel Stehule) + - - + + This is enabled with the option. + + - - Allow vacuum commands run by vacuumdb to operate in parallel mode - (Masahiko Sawada) - + + - - This is enabled with the new option. - + + Remove and + from createuser (Alexander + Lakhin) + - + + The long-supported options for this are called + and . + + - - + + - - Allow reindexdb to operate in - parallel (Julien Rouhaud) - - - - Parallel mode is enabled with the new option. - - - - - - - - - Allow dropdb to force disconnections - so the drop succeeds (Pavel Stehule) - - - - This is enabled with the option. - - - - - - - - - Remove and - from createuser (Alexander - Lakhin) - - - - The long-supported options for this are called - and . - - - - - - - - - Use the directory of the pg_upgrade - binary as the default new 'bindir' location when running - pg_upgrade (Daniel Gustafsson) - - - + + Use the directory of the pg_upgrade + binary as the default new 'bindir' location when running + pg_upgrade (Daniel Gustafsson) + + @@ -2667,45 +2517,42 @@ - - + + - - Add a glossary to the documentation - (Corey Huinker, Jürgen Purtz, Roger Harkavy, Álvaro - Herrera) - + + Add a glossary to the documentation + (Corey Huinker, Jürgen Purtz, Roger Harkavy, Álvaro + Herrera) + + - + + - - + + Reformat tables containing function + information for better clarity (Tom Lane) + + - - Reformat tables containing function - information for better clarity (Tom Lane) - + + - - - - - - - Upgrade to use DocBook 4.5 - (Peter Eisentraut) - - - + + Upgrade to use DocBook 4.5 + (Peter Eisentraut) + + @@ -2716,271 +2563,252 @@ - - + + - - Add support for building on Visual Studio 2019 (Haribabu Kommi) - + + Add support for building on Visual Studio 2019 (Haribabu Kommi) + + - + + - - + + Add build support for MSYS2 (Peter Eisentraut) + + - - Add build support for MSYS2 (Peter Eisentraut) - + + - + + Add compare_exchange and fetch_add assembly language code for Power + PC compilers (Noah Misch) + + - - + + - - Add compare_exchange and fetch_add assembly language code for Power - PC compilers (Noah Misch) - + + Update Snowball + stemmer dictionaries used by full text search (Panagiotis + Mavrogiorgos) + - + + This adds Greek stemming and improves Danish and French stemming. + + - - + + - - Update Snowball - stemmer dictionaries used by full text search (Panagiotis - Mavrogiorgos) - + + Remove support for Windows 2000 (Michael Paquier) + + - - This adds Greek stemming and improves Danish and French stemming. - + + - + + Remove support for non-ELF BSD + systems (Peter Eisentraut) + + - - + + - - Remove support for Windows 2000 (Michael Paquier) - + + Remove support for Python versions + 2.5.X and earlier (Peter Eisentraut) + + - + + - - + + Remove support for OpenSSL 0.9.8 + and 1.0.0 (Michael Paquier) + + - - Remove support for non-ELF BSD - systems (Peter Eisentraut) - + + - + + Remove support option + 8-byval (Peter Eisentraut) + - - + + This was needed for previously supported version-zero functions. + + - - Remove support for Python versions - 2.5.X and earlier (Peter Eisentraut) - + + - + + Remove configure option + (Peter Eisentraut) + - - + + This was needed for previously supported version-zero functions. + + - - Remove support for OpenSSL 0.9.8 - and 1.0.0 (Michael Paquier) - + + - + + Add the query string to planner hook functions (Pascal Legrand, + Julien Rouhaud) + + - - + + - - Remove support option - 8-byval (Peter Eisentraut) - + + Add TRUNCATE + command hook (Yuli Khodorkovskiy) + + - - This was needed for previously supported version-zero functions. - + + - + + Add TLS init hook (Andrew Dunstan) + + - - + + - - Remove configure option - (Peter Eisentraut) - + + Allow building with no predefined Unix-domain socket directory + (Peter Eisentraut) + + - - This was needed for previously supported version-zero functions. - + + - + + Reduce the probability of SysV resource key collision on Unix platforms + (Tom Lane) + + - - + + - - Add the query string to planner hook functions (Pascal Legrand, - Julien Rouhaud) - + + Use operating system functions to cleanly erase memory that contains + sensitive information (Peter Eisentraut) + - + + For example, this is used for clearing passwords stored in memory. + + - - + + - - Add TRUNCATE - command hook (Yuli Khodorkovskiy) - + + Add "headerscheck" script to test C header-file compatibility + (Tom Lane) + + - + + - - + + Implement internal lists as arrays, rather than a chain of structures + (Tom Lane) + - - Add TLS init hook (Andrew Dunstan) - + + This improves performance for queries that access many object. + The internal List API has also been improved. + + - + + - - - - - Allow building with no predefined Unix-domain socket directory - (Peter Eisentraut) - - - - - - - - - Reduce the probability of SysV resource key collision on Unix platforms - (Tom Lane) - - - - - - - - - Use operating system functions to cleanly erase memory that contains - sensitive information (Peter Eisentraut) - - - - For example, this is used for clearing passwords stored in memory. - - - - - - - - - Add "headerscheck" script to test C header-file compatibility - (Tom Lane) - - - - - - - - - Implement internal lists as arrays, rather than a chain of structures - (Tom Lane) - - - - This improves performance for queries that access many object. - The internal List API has also been improved. - - - - - - - - - Update Windows build scripts - to use the modern flag for - UUID libraries (Kyotaro Horiguchi) - - - + + Update Windows build scripts + to use the modern flag for + UUID libraries (Kyotaro Horiguchi) + + @@ -2991,224 +2819,209 @@ - - + + - - Allow extensions to be - specified as trusted (Tom Lane) - + + Allow extensions to be + specified as trusted (Tom Lane) + - - Such extensions can be installed in a database by users with creation - rights, even if they are not superusers. This change also removes - the pg_pltemplate system catalog. - + + Such extensions can be installed in a database by users with creation + rights, even if they are not superusers. This change also removes + the pg_pltemplate system catalog. + + - + + - - + + Remove support for upgrading "unpackaged" extensions (Tom Lane) + + - - Remove support for upgrading "unpackaged" extensions (Tom Lane) - + + - + + Allow non-superusers to connect to + foreign servers without using a password (Craig Ringer) + - - + + Specifically, allow ALTER + USER MAPPING to set + password_required to false. Care must still be + taken to avoid non-superusers from using superuser credentials to + connect to the foreign server. + + - - Allow non-superusers to connect to - foreign servers without using a password (Craig Ringer) - + + - - Specifically, allow ALTER - USER MAPPING to set - password_required to false. Care must still be - taken to avoid non-superusers from using superuser credentials to - connect to the foreign server. - + + Allow postgres_fdw to use certificate + authentication (Craig Ringer) + - + + Different users can use different certificates. + + - - + + - - Allow postgres_fdw to use certificate - authentication (Craig Ringer) - + + Allow to control access to the + TRUNCATE command (Yuli Khodorkovskiy) + + - - Different users can use different certificates. - + + - + + Add extension bool_plperl which transforms + SQL booleans to/from PL/Perl booleans (Ivan + Panchenko) WHERE IS THIS DOCUMENTED? + + - - + + - - Allow to control access to the - TRUNCATE command (Yuli Khodorkovskiy) - + + Have treat SELECT + ... FOR UPDATE as distinct from those without FOR + UPDATE (Andrew Gierth, Vik Fearing) + + - + + - - + + Allow pg_stat_statements to optionally + track the planning time of statements (Julien Rouhaud, Pascal Legrand, + Thomas Munro, Fujii Masao) + - - Add extension bool_plperl which transforms - SQL booleans to/from PL/Perl booleans (Ivan - Panchenko) WHERE IS THIS DOCUMENTED? - + + Previously only execution time was tracked. + + - + + - - + + Overhaul 's lquery syntax to treat + NOT (!) more logically (Filip Rembialkowski, + Tom Lane, Nikita Glukhov) + - - Have treat SELECT - ... FOR UPDATE as distinct from those without FOR - UPDATE (Andrew Gierth, Vik Fearing) - + + Also allow non-* queries to use a numeric range ({}) of matches. + + - + + - - + + Add support for binary I/O of , lquery, and + ltxtquery types (Nino Floris) + + - - Allow pg_stat_statements to optionally - track the planning time of statements (Julien Rouhaud, Pascal Legrand, - Thomas Munro, Fujii Masao) - + + - - Previously only execution time was tracked. - + + Add option to extension to ignore the sign + of integers (Jeff Janes) + + - + + - - + + Add function + pg_file_sync() to allow fsync'ing a file + (Fujii Masao) + + - - Overhaul 's lquery syntax to treat - NOT (!) more logically (Filip Rembialkowski, - Tom Lane, Nikita Glukhov) - + + - - Also allow non-* queries to use a numeric range ({}) of matches. - + + Add functions to output + t_infomask/t_infomask2 + values in human-readable format (Craig Ringer, Sawada Masahiko, + Michael Paquier) + + - - - - - - - Add support for binary I/O of , lquery, and - ltxtquery types (Nino Floris) - - - - - - - - - Add option to extension to ignore the sign - of integers (Jeff Janes) - - - - - - - - - Add function - pg_file_sync() to allow fsync'ing a file - (Fujii Masao) - - - - - - - - - Add functions to output - t_infomask/t_infomask2 - values in human-readable format (Craig Ringer, Sawada Masahiko, - Michael Paquier) - - - - - - - - - Add btree index deduplication processing columns to pageinspect output - (Peter Geoghegan) - - - + + + + Add btree index deduplication processing columns to pageinspect output + (Peter Geoghegan) + + @@ -3219,11 +3032,11 @@ Acknowledgments - - The following individuals (in alphabetical order) have contributed to this - release as patch authors, committers, reviewers, testers, or reporters of - issues. - + + The following individuals (in alphabetical order) have contributed to this + release as patch authors, committers, reviewers, testers, or reporters of + issues. +