From: Jonathan S. Katz Date: Sat, 7 Sep 2024 18:42:49 +0000 (-0400) Subject: Further revisions to PostgreSQL 17 GA X-Git-Url: http://git.postgresql.org/gitweb/static/benefitdownload/file?a=commitdiff_plain;h=62df7b75de251ec5e5e5eea483b9a6faf62a31e1;p=press.git Further revisions to PostgreSQL 17 GA Reviewed-by: Adrian Klaver Reviewed-by: Andrew Atkinson Reviewed-by: Matthias van de Meent --- diff --git a/releases/17/release.en.md b/releases/17/release.en.md index f35e313..e7aee88 100644 --- a/releases/17/release.en.md +++ b/releases/17/release.en.md @@ -25,7 +25,7 @@ source relational database for organizations of all sizes. The PostgreSQL [vacuum](https://www.postgresql.org/docs/17/routine-vacuuming.html) process is critical for healthy operations, requiring server instance resources to operate. PostgreSQL 17 introduces a new internal memory structure for vacuum -was used that consumes up to 20x less memory. This improves vacuum speed and +that consumes up to 20x less memory. This improves vacuum speed and also reduces the use of shared resources, making more available for your workload. @@ -55,7 +55,7 @@ function. ### Further expansion of a robust developer experience PostgreSQL was the [first relational database to add JSON support (2012)](https://www.postgresql.org/about/news/postgresql-92-released-1415/), -and PostgreSQL 17 adds to its implementation SQL/JSON standard. +and PostgreSQL 17 adds to its implementation of the SQL/JSON standard. [`JSON_TABLE`](https://www.postgresql.org/docs/17/functions-json.html#FUNCTIONS-SQLJSON-TABLE) is now available in PostgreSQL 17, letting developers convert JSON data into a standard PostgreSQL table. PostgreSQL 17 now supports [SQL/JSON constructors](https://www.postgresql.org/docs/17/functions-json.html#FUNCTIONS-JSON-CREATION-TABLE) @@ -71,15 +71,16 @@ PostgreSQL 17 adds more features to [`MERGE`](https://www.postgresql.org/docs/17 which is used for conditional updates, including a `RETURNING` clause and the ability to update [views](https://www.postgresql.org/docs/17/sql-createview.html). Additionally, PostgreSQL 17 has new capabilities for bulk loading and data -exporting,including up to a 2x performance improvement when exporting large rows +exporting, including up to a 2x performance improvement when exporting large rows using the [`COPY`](https://www.postgresql.org/docs/17/sql-copy.html) command. `COPY` performance also has improvements when the source and destination encodings match, and includes a new option, `ON_ERROR`, that allows an import to continue even if there is an insert error. -This release expands on functionality for managing data in partitions or -federated on remote PostgreSQL instances. PostgreSQL 17 supports using identity -columns and exclusion constraints on [partitioned tables](https://www.postgresql.org/docs/17/ddl-partitioning.html). +This release expands on functionality both for managing data in partitions and +data distributed across remote PostgreSQL instances. PostgreSQL 17 supports +using identity columns and exclusion constraints on +[partitioned tables](https://www.postgresql.org/docs/17/ddl-partitioning.html). With this release, the [PostgreSQL foreign data wrapper](https://www.postgresql.org/docs/17/postgres-fdw.html) ([`postgres_fdw`](https://www.postgresql.org/docs/17/postgres-fdw.html)), used to execute queries on remote PostgreSQL instances, can now push `EXISTS` and @@ -106,8 +107,7 @@ PostgreSQL 17 now includes failover control for logical replication, making it more resilient when deployed in high availability environments. Additionally, PostgreSQL 17 introduces the [`pg_createsubscriber`](https://www.postgresql.org/docs/17/app-pgcreatesubscriber.html) -command-line tool for adding logical replication on a replica using physical -replication. +command-line tool for converting a physical replica into a new logical replica. ### More options for managing security and operations @@ -117,30 +117,30 @@ lets users perform a direct TLS handshakes when using [ALPN](https://en.wikipedia.org/wiki/Application-Layer_Protocol_Negotiation) (registered as `postgresql` in the ALPN directory). PostgreSQL 17 also adds the `pg_maintain` [predefined role](https://www.postgresql.org/docs/17/predefined-roles.html), -which allows you to give users permission to execute maintenance operations. +which gives users permission to perform maintenance operations. [`pg_basebackup`](https://www.postgresql.org/docs/17/app-pgbasebackup.html), the backup utility included in PostgreSQL, now supports incremental backups and adds the [`pg_combinebackup`](https://www.postgresql.org/docs/17/app-pgcombinebackup.html) -or the backup restoration process. Additionally, +utility to reconstruct a full backup. Additionally, [`pg_dump`](https://www.postgresql.org/docs/17/app-pgdump.html) includes a new option called `--filter` that lets you select what objects to include when generating a dump file. PostgreSQL 17 also includes enhancements to monitoring and analysis features. [`EXPLAIN`](https://www.postgresql.org/docs/17/sql-explain.html) now shows the -time spent for I/O block reads and writes, and includes two new options: +time spent for local I/O block reads and writes, and includes two new options: `SERIALIZE` and `MEMORY`, useful for seeing the time spent in data conversion for network transmission, and how much memory was used. PostgreSQL 17 now reports the [progress of vacuuming indexes](https://www.postgresql.org/docs/17/progress-reporting.html#VACUUM-PROGRESS-REPORTING), and adds the [`pg_wait_events`](https://www.postgresql.org/docs/17/view-pg-wait-events.html) -that, when combined with [`pg_stat_activity`](https://www.postgresql.org/docs/17/monitoring-stats.html#MONITORING-PG-STAT-ACTIVITY-VIEW), +system view that, when combined with [`pg_stat_activity`](https://www.postgresql.org/docs/17/monitoring-stats.html#MONITORING-PG-STAT-ACTIVITY-VIEW), gives more insight into why an active session is waiting. ### Additional Features -Many other new features and improvements have been added to PostgreSQL 17. Many -of these may also be helpful for your use cases. Please see the +Many other new features and improvements have been added to PostgreSQL 17 that +may also be helpful for your use cases. Please see the [release notes](https://www.postgresql.org/docs/17/release-17.html) for a complete list of new and changed features.