public inbox for [email protected]help / color / mirror / Atom feed
PostgreSQL 16 release announcement 5+ messages / 4 participants [nested] [flat]
* PostgreSQL 16 release announcement @ 2023-08-19 19:39 Jonathan S. Katz <[email protected]> 0 siblings, 2 replies; 5+ messages in thread From: Jonathan S. Katz @ 2023-08-19 19:39 UTC (permalink / raw) To: PostgreSQL Advocacy <[email protected]>; +Cc: [email protected] Hi, Attached is the first draft of the PostgreSQL 16 release announcement, authored by Chelsea Dole & myself. To frame this up, the goal of the GA release announcement is to help folks discover the awesome new features of PostgreSQL. It's impossible to list out every single feature in the release and still have a coherent announcement, so we try to target features that have the broadest range of impact. It's possible we missed or incorrectly stated something, so please provide feedback if we did so. (Note I have not added in all of the links etc. to the Markdown yet, as I want to wait for the first pass of feedback to come through). **Please provide feedback by August 26, 12:00 UTC**. After that point, we need to freeze all changes so we can begin the release announcement translation effort. Thanks, Jonathan September 14, 2023 - The PostgreSQL Global Development Group today announced the release of PostgreSQL 16, the latest version of the world’s most advanced open source database. PostgreSQL 16 raises its performance, with notable improvements to query parallelism, bulk data loading, and logical replication. There are many features in this release for developers and administrators alike, including more SQL/JSON syntax, new monitoring stats for your workloads, and greater flexibility in defining access control rules for large scale workloads. <HOLD FOR QUOTE> PostgreSQL, an innovative data management system known for its reliability and robustness, benefits from over 25 years of open source development from a global developer community and has become the preferred open source relational database for organizations of all sizes. ### Performance Improvements PostgreSQL 16 improves the performance of existing PostgreSQL functionality through new query planner optimizations. In this latest release, the query planner can parallelize `FULL` and `RIGHT` joins, utilize incremental sorts for `SELECT DISTINCT` queries, and execute window functions more efficiently. It also introduces `RIGHT` and `OUTER` "anti-joins", which enable users to identify rows not present in a joined table. This release includes improvements for bulk loading using `COPY` in both single and concurrent operations, with tests showing up to a 300% performance improvement in some cases. PostgreSQL adds support for load balancing in clients that use `libpq`, and improvements to vacuum strategy that reduce the necessity of full-table freezes. Additionally, PostgreSQL 16 introduces CPU acceleration using `SIMD` in both x86 and ARM architectures, resulting in performance gains when processing ASCII and JSON strings, and performing array and subtransaction searches. ### Logical replication Logical replication lets PostgreSQL users stream data to other PostgreSQL instances or subscribers that can interpret the PostgreSQL logical replication protocol. In PostgreSQL 16, users can perform logical decoding from a standby instance, meaning a standby can publish logical changes to other servers. This provides developers with new workload distribution options – for example, using a standby rather than the busier primary to logically replicate changes to downstream systems. Additionally, there are several performance improvements in PostgreSQL 16 to logical replication. Subscribers can now apply large transactions using parallel workers. For tables that do not have a `PRIMARY KEY`, subscribers can use B-tree indexes instead of sequential scans to find rows. Under certain conditions, users can also speed up initial table synchronization using the binary format. There are several access control improvements to logical replication in PostgreSQL 16, including the new predefined role pg_create_subscription, which grants users the ability to create a new logical subscription. Finally, this release begins adding support for bidirectional logical replication, introducing functionality to replicate data between two tables from different publishers. ### Developer Experience PostgreSQL 16 adds more syntax from the SQL/JSON standard, including constructors and predicates such as `JSON_ARRAY()`, `JSON_ARRAYAGG()`, and `IS JSON`. This release also introduces the ability to use underscores for thousands separators (e.g. `5_432_000`) and non-decimal integer literals, such as `0x1538`, `0o12470`, and `0b1010100111000`. Developers using PostgreSQL 16 will also benefit from the addition of multiple commands to `psql` client protocol, including the `\bind` command, which allows users to execute parameterized queries (e.g `SELECT $1 + $2`) then use `\bind` to substitute the variables. PostgreSQL 16 improves general support for text collations, which provide rules for how text is sorted. PostgreSQL 16 builds with ICU support by default, determines the default ICU locale from the environment, and allows users to define custom ICU collation rules. ### Monitoring A key aspect of tuning the performance of database workloads is understanding the impact of your I/O operations on your system. PostgreSQL 16 helps simplify how you can analyze this data with the new pg_stat_io view, which tracks key I/O statistics such as shared_buffer hits and I/O latency. Additionally, this release adds a new field to the pg_stat_all_tables view, capturing a timestamp representing when a table or index was last scanned. PostgreSQL also makes auto_explain more readable by logging values passed into parameterized statements, and improves accuracy of pg_stat_activity’s normalization algorithm. ### Access Control & Security PostgreSQL 16 provides finer-grained options for access control and enhances other security features. The release improves management of `pg_hba.conf` and `pg_ident.conf` files, including allowing regular expression matching for user and database names and "include" directives for external configuration files. This release adds several security-oriented client connection parameters, including require_auth, which allows clients to specify which authentication parameters they are willing to accept from a server, and `sslrootcert="system"`, which indicates that PostgreSQL should use the trusted certificate authority (CA) store provided by the client’s operating system. Additionally, the release adds support for Kerberos credential delegation, allowing extensions such as `postgres_fdw` and `dblink` to use authenticated credentials to connect to trusted services. ### About PostgreSQL [PostgreSQL](https://www.postgresql.org) is the world's most advanced open source database, with a global community of thousands of users, contributors, companies and organizations. Built on over 35 years of engineering, starting at the University of California, Berkeley, PostgreSQL has continued with an unmatched pace of development. PostgreSQL's mature feature set not only matches top proprietary database systems, but exceeds them in advanced database features, extensibility, security, and stability. ### Links * [Download](https://www.postgresql.org/download/) * [Release Notes](https://www.postgresql.org/docs/16/release-16.html) * [Press Kit](https://www.postgresql.org/about/press/) * [Security Page](https://www.postgresql.org/support/security/) * [Versioning Policy](https://www.postgresql.org/support/versioning/) * [Follow @postgresql](https://twitter.com/postgresql) * [Donate](https://www.postgresql.org/about/donate/) ## More About the Features For explanations of the above features and others, please see the following resources: * [Release Notes](https://www.postgresql.org/docs/16/release-16.html) * [Feature Matrix](https://www.postgresql.org/about/featurematrix/) ## Where to Download There are several ways you can download PostgreSQL 16, including: * The [Official Downloads](https://www.postgresql.org/download/) page, with contains installers and tools for [Windows](https://www.postgresql.org/download/windows/), [Linux](https://www.postgresql.org/download/), [macOS](https://www.postgresql.org/download/macosx/), and more. * [Source Code](https://www.postgresql.org/ftp/source/v16.0) Other tools and extensions are available on the [PostgreSQL Extension Network](http://pgxn.org/). ## Documentation PostgreSQL 16 comes with HTML documentation as well as man pages, and you can also browse the documentation online in both [HTML](https://www.postgresql.org/docs/16/) and [PDF](https://www.postgresql.org/files/documentation/pdf/16/postgresql-16-US.pdf) formats. ## Licence PostgreSQL uses the [PostgreSQL License](https://www.postgresql.org/about/licence/), a BSD-like "permissive" license. This [OSI-certified license](http://www.opensource.org/licenses/postgresql/) is widely appreciated as flexible and business-friendly, since it does not restrict the use of PostgreSQL with commercial and proprietary applications. Together with multi-company support and public ownership of the code, our license makes PostgreSQL very popular with vendors wanting to embed a database in their own products without fear of fees, vendor lock-in, or changes in licensing terms. ## Contacts Website * [https://www.postgresql.org/](https://www.postgresql.org/) Email * [[email protected]](mailto:[email protected]) ## Images and Logos Postgres, PostgreSQL, and the Elephant Logo (Slonik) are all registered trademarks of the [PostgreSQL Community Association of Canada](https://www.postgres.ca). If you wish to use these marks, you must comply with the [trademark policy](https://www.postgresql.org/about/policies/trademarks/). ## Corporate Support PostgreSQL enjoys the support of numerous companies, who sponsor developers, provide hosting resources, and give us financial support. See our [sponsors](https://www.postgresql.org/about/sponsors/) page for some of these project supporters. There is also a large community of [companies offering PostgreSQL Support](https://www.postgresql.org/support/professional_support/), from individual consultants to multinational companies. If you wish to make a financial contribution to the PostgreSQL Global Development Group or one of the recognized community non-profit organizations, please visit our [donations](https://www.postgresql.org/about/donate/) page. Attachments: [text/plain] release.en.md (9.2K, 2-release.en.md) download | inline: September 14, 2023 - The PostgreSQL Global Development Group today announced the release of PostgreSQL 16, the latest version of the world’s most advanced open source database. PostgreSQL 16 raises its performance, with notable improvements to query parallelism, bulk data loading, and logical replication. There are many features in this release for developers and administrators alike, including more SQL/JSON syntax, new monitoring stats for your workloads, and greater flexibility in defining access control rules for large scale workloads. <HOLD FOR QUOTE> PostgreSQL, an innovative data management system known for its reliability and robustness, benefits from over 25 years of open source development from a global developer community and has become the preferred open source relational database for organizations of all sizes. ### Performance Improvements PostgreSQL 16 improves the performance of existing PostgreSQL functionality through new query planner optimizations. In this latest release, the query planner can parallelize `FULL` and `RIGHT` joins, utilize incremental sorts for `SELECT DISTINCT` queries, and execute window functions more efficiently. It also introduces `RIGHT` and `OUTER` "anti-joins", which enable users to identify rows not present in a joined table. This release includes improvements for bulk loading using `COPY` in both single and concurrent operations, with tests showing up to a 300% performance improvement in some cases. PostgreSQL adds support for load balancing in clients that use `libpq`, and improvements to vacuum strategy that reduce the necessity of full-table freezes. Additionally, PostgreSQL 16 introduces CPU acceleration using `SIMD` in both x86 and ARM architectures, resulting in performance gains when processing ASCII and JSON strings, and performing array and subtransaction searches. ### Logical replication Logical replication lets PostgreSQL users stream data to other PostgreSQL instances or subscribers that can interpret the PostgreSQL logical replication protocol. In PostgreSQL 16, users can perform logical decoding from a standby instance, meaning a standby can publish logical changes to other servers. This provides developers with new workload distribution options – for example, using a standby rather than the busier primary to logically replicate changes to downstream systems. Additionally, there are several performance improvements in PostgreSQL 16 to logical replication. Subscribers can now apply large transactions using parallel workers. For tables that do not have a `PRIMARY KEY`, subscribers can use B-tree indexes instead of sequential scans to find rows. Under certain conditions, users can also speed up initial table synchronization using the binary format. There are several access control improvements to logical replication in PostgreSQL 16, including the new predefined role pg_create_subscription, which grants users the ability to create a new logical subscription. Finally, this release begins adding support for bidirectional logical replication, introducing functionality to replicate data between two tables from different publishers. ### Developer Experience PostgreSQL 16 adds more syntax from the SQL/JSON standard, including constructors and predicates such as `JSON_ARRAY()`, `JSON_ARRAYAGG()`, and `IS JSON`. This release also introduces the ability to use underscores for thousands separators (e.g. `5_432_000`) and non-decimal integer literals, such as `0x1538`, `0o12470`, and `0b1010100111000`. Developers using PostgreSQL 16 will also benefit from the addition of multiple commands to `psql` client protocol, including the `\bind` command, which allows users to execute parameterized queries (e.g `SELECT $1 + $2`) then use `\bind` to substitute the variables. PostgreSQL 16 improves general support for text collations, which provide rules for how text is sorted. PostgreSQL 16 builds with ICU support by default, determines the default ICU locale from the environment, and allows users to define custom ICU collation rules. ### Monitoring A key aspect of tuning the performance of database workloads is understanding the impact of your I/O operations on your system. PostgreSQL 16 helps simplify how you can analyze this data with the new pg_stat_io view, which tracks key I/O statistics such as shared_buffer hits and I/O latency. Additionally, this release adds a new field to the pg_stat_all_tables view, capturing a timestamp representing when a table or index was last scanned. PostgreSQL also makes auto_explain more readable by logging values passed into parameterized statements, and improves accuracy of pg_stat_activity’s normalization algorithm. ### Access Control & Security PostgreSQL 16 provides finer-grained options for access control and enhances other security features. The release improves management of `pg_hba.conf` and `pg_ident.conf` files, including allowing regular expression matching for user and database names and "include" directives for external configuration files. This release adds several security-oriented client connection parameters, including require_auth, which allows clients to specify which authentication parameters they are willing to accept from a server, and `sslrootcert="system"`, which indicates that PostgreSQL should use the trusted certificate authority (CA) store provided by the client’s operating system. Additionally, the release adds support for Kerberos credential delegation, allowing extensions such as `postgres_fdw` and `dblink` to use authenticated credentials to connect to trusted services. ### About PostgreSQL [PostgreSQL](https://www.postgresql.org) is the world's most advanced open source database, with a global community of thousands of users, contributors, companies and organizations. Built on over 35 years of engineering, starting at the University of California, Berkeley, PostgreSQL has continued with an unmatched pace of development. PostgreSQL's mature feature set not only matches top proprietary database systems, but exceeds them in advanced database features, extensibility, security, and stability. ### Links * [Download](https://www.postgresql.org/download/) * [Release Notes](https://www.postgresql.org/docs/16/release-16.html) * [Press Kit](https://www.postgresql.org/about/press/) * [Security Page](https://www.postgresql.org/support/security/) * [Versioning Policy](https://www.postgresql.org/support/versioning/) * [Follow @postgresql](https://twitter.com/postgresql) * [Donate](https://www.postgresql.org/about/donate/) ## More About the Features For explanations of the above features and others, please see the following resources: * [Release Notes](https://www.postgresql.org/docs/16/release-16.html) * [Feature Matrix](https://www.postgresql.org/about/featurematrix/) ## Where to Download There are several ways you can download PostgreSQL 16, including: * The [Official Downloads](https://www.postgresql.org/download/) page, with contains installers and tools for [Windows](https://www.postgresql.org/download/windows/), [Linux](https://www.postgresql.org/download/), [macOS](https://www.postgresql.org/download/macosx/), and more. * [Source Code](https://www.postgresql.org/ftp/source/v16.0) Other tools and extensions are available on the [PostgreSQL Extension Network](http://pgxn.org/). ## Documentation PostgreSQL 16 comes with HTML documentation as well as man pages, and you can also browse the documentation online in both [HTML](https://www.postgresql.org/docs/16/) and [PDF](https://www.postgresql.org/files/documentation/pdf/16/postgresql-16-US.pdf) formats. ## Licence PostgreSQL uses the [PostgreSQL License](https://www.postgresql.org/about/licence/), a BSD-like "permissive" license. This [OSI-certified license](http://www.opensource.org/licenses/postgresql/) is widely appreciated as flexible and business-friendly, since it does not restrict the use of PostgreSQL with commercial and proprietary applications. Together with multi-company support and public ownership of the code, our license makes PostgreSQL very popular with vendors wanting to embed a database in their own products without fear of fees, vendor lock-in, or changes in licensing terms. ## Contacts Website * [https://www.postgresql.org/](https://www.postgresql.org/) Email * [[email protected]](mailto:[email protected]) ## Images and Logos Postgres, PostgreSQL, and the Elephant Logo (Slonik) are all registered trademarks of the [PostgreSQL Community Association of Canada](https://www.postgres.ca). If you wish to use these marks, you must comply with the [trademark policy](https://www.postgresql.org/about/policies/trademarks/). ## Corporate Support PostgreSQL enjoys the support of numerous companies, who sponsor developers, provide hosting resources, and give us financial support. See our [sponsors](https://www.postgresql.org/about/sponsors/) page for some of these project supporters. There is also a large community of [companies offering PostgreSQL Support](https://www.postgresql.org/support/professional_support/), from individual consultants to multinational companies. If you wish to make a financial contribution to the PostgreSQL Global Development Group or one of the recognized community non-profit organizations, please visit our [donations](https://www.postgresql.org/about/donate/) page. [application/pgp-signature] OpenPGP_signature (840B, 3-OpenPGP_signature) download ^ permalink raw reply [nested|flat] 5+ messages in thread
* Re: PostgreSQL 16 release announcement @ 2023-08-21 09:32 Daniel Gustafsson <[email protected]> parent: Jonathan S. Katz <[email protected]> 1 sibling, 1 reply; 5+ messages in thread From: Daniel Gustafsson @ 2023-08-21 09:32 UTC (permalink / raw) To: Jonathan S. Katz <[email protected]>; +Cc: PostgreSQL Advocacy <[email protected]>; [email protected] > On 19 Aug 2023, at 21:39, Jonathan S. Katz <[email protected]> wrote: > It's possible we missed or incorrectly stated something, so please provide feedback if we did so. Nitpick, but the Linux downloads can have a download/linux link as well to match Windows/macOS: [Windows](https://www.postgresql.org/download/windows/), [Linux](https://www.postgresql.org/download/), [macOS](https://www.postgresql.org/download/macosx/), -- Daniel Gustafsson ^ permalink raw reply [nested|flat] 5+ messages in thread
* Re: PostgreSQL 16 release announcement @ 2023-08-21 11:07 Dave Cramer <[email protected]> parent: Daniel Gustafsson <[email protected]> 0 siblings, 1 reply; 5+ messages in thread From: Dave Cramer @ 2023-08-21 11:07 UTC (permalink / raw) To: Daniel Gustafsson <[email protected]>; +Cc: Jonathan S. Katz <[email protected]>; PostgreSQL Advocacy <[email protected]>; [email protected] On Mon, 21 Aug 2023 at 05:32, Daniel Gustafsson <[email protected]> wrote: > > On 19 Aug 2023, at 21:39, Jonathan S. Katz <[email protected]> wrote: > > > It's possible we missed or incorrectly stated something, so please > provide feedback if we did so. > What does the improvements to access control have to do with large work loads ? Dave Cramer > > ^ permalink raw reply [nested|flat] 5+ messages in thread
* Re: PostgreSQL 16 release announcement @ 2023-08-23 17:55 Jonathan S. Katz <[email protected]> parent: Dave Cramer <[email protected]> 0 siblings, 0 replies; 5+ messages in thread From: Jonathan S. Katz @ 2023-08-23 17:55 UTC (permalink / raw) To: Dave Cramer <[email protected]>; Daniel Gustafsson <[email protected]>; +Cc: PostgreSQL Advocacy <[email protected]>; [email protected] On 8/21/23 7:07 AM, Dave Cramer wrote: > > > > On Mon, 21 Aug 2023 at 05:32, Daniel Gustafsson <[email protected] > <mailto:[email protected]>> wrote: > > > On 19 Aug 2023, at 21:39, Jonathan S. Katz <[email protected] > <mailto:[email protected]>> wrote: > > > It's possible we missed or incorrectly stated something, so > please provide feedback if we did so. > > > What does the improvements to access control have to do with large work > loads ? This took me a moment to realize what you were referring to because you didn't provide the sentence in question. The theme is built around the changes in the host configuration files that allow for regular expressions and includes, which, from discussing with users, benefits people who are managing larger fleets of PostgreSQL. That said, I see the confusion around the wording. I've changed it to this below, and attached the latest copy based on other feedback. ==snip== and greater flexibility in defining access control rules for management of policies across large fleets. ==snip== Reminder that the window to submit changes closes at **August 26, 12:00 UTC**. Thanks, Jonathan September 14, 2023 - The PostgreSQL Global Development Group today announced the release of PostgreSQL 16, the latest version of the world's most advanced open source database. PostgreSQL 16 raises its performance, with notable improvements to query parallelism, bulk data loading, and logical replication. There are many features in this release for developers and administrators alike, including more SQL/JSON syntax, new monitoring stats for your workloads, and greater flexibility in defining access control rules for management of policies across large fleets. <HOLD FOR QUOTE> PostgreSQL, an innovative data management system known for its reliability and robustness, benefits from over 25 years of open source development from a global developer community and has become the preferred open source relational database for organizations of all sizes. ### Performance Improvements PostgreSQL 16 improves the performance of existing PostgreSQL functionality through new query planner optimizations. In this latest release, the query planner can parallelize `FULL` and `RIGHT` joins, utilize incremental sorts for `SELECT DISTINCT` queries, and optimize window function executions so they execute more efficiently. It also introduces `RIGHT` and `OUTER` "anti-joins", which enable users to identify rows not present in a joined table. This release includes improvements for bulk loading using `COPY` in both single and concurrent operations, with tests showing up to a 300% performance improvement in some cases. PostgreSQL adds support for load balancing in clients that use `libpq`, and improvements to vacuum strategy that reduce the necessity of full-table freezes. Additionally, PostgreSQL 16 introduces CPU acceleration using `SIMD` in both x86 and ARM architectures, resulting in performance gains when processing ASCII and JSON strings, and performing array and subtransaction searches. ### Logical replication Logical replication lets PostgreSQL users stream data to other PostgreSQL instances or subscribers that can interpret the PostgreSQL logical replication protocol. In PostgreSQL 16, users can perform logical decoding from a standby instance, meaning a standby can publish logical changes to other servers. This provides developers with new workload distribution options – for example, using a standby rather than the busier primary to logically replicate changes to downstream systems. Additionally, there are several performance improvements in PostgreSQL 16 to logical replication. Subscribers can now apply large transactions using parallel workers. For tables that do not have a `PRIMARY KEY`, subscribers can use B-tree indexes instead of sequential scans to find rows. Under certain conditions, users can also speed up initial table synchronization using the binary format. There are several access control improvements to logical replication in PostgreSQL 16, including the new predefined role pg_create_subscription, which grants users the ability to create a new logical subscription. Finally, this release begins adding support for bidirectional logical replication, introducing functionality to replicate data between two tables from different publishers. ### Developer Experience PostgreSQL 16 adds more syntax from the SQL/JSON standard, including constructors and predicates such as `JSON_ARRAY()`, `JSON_ARRAYAGG()`, and `IS JSON`. This release also introduces the ability to use underscores for thousands separators (e.g. `5_432_000`) and non-decimal integer literals, such as `0x1538`, `0o12470`, and `0b1010100111000`. Developers using PostgreSQL 16 will also benefit from the addition of multiple commands to `psql` client protocol, including the `\bind` command, which allows users to execute parameterized queries (e.g `SELECT $1 + $2`) then use `\bind` to substitute the variables. PostgreSQL 16 improves general support for text collations, which provide rules for how text is sorted. PostgreSQL 16 builds with ICU support by default, determines the default ICU locale from the environment, and allows users to define custom ICU collation rules. ### Monitoring A key aspect of tuning the performance of database workloads is understanding the impact of your I/O operations on your system. PostgreSQL 16 helps simplify how you can analyze this data with the new pg_stat_io view, which tracks key I/O statistics such as shared_buffer hits and I/O latency. Additionally, this release adds a new field to the `pg_stat_all_tables` view that records a timestamp representing when a table or index was last scanned. PostgreSQL also makes auto_explain more readable by logging values passed into parameterized statements, and improves accuracy of pg_stat_activity's normalization algorithm. ### Access Control & Security PostgreSQL 16 provides finer-grained options for access control and enhances other security features. The release improves management of `pg_hba.conf` and `pg_ident.conf` files, including allowing regular expression matching for user and database names and "include" directives for external configuration files. This release adds several security-oriented client connection parameters, including require_auth, which allows clients to specify which authentication parameters they are willing to accept from a server, and `sslrootcert="system"`, which indicates that PostgreSQL should use the trusted certificate authority (CA) store provided by the client's operating system. Additionally, the release adds support for Kerberos credential delegation, allowing extensions such as `postgres_fdw` and `dblink` to use authenticated credentials to connect to trusted services. ### About PostgreSQL [PostgreSQL](https://www.postgresql.org) is the world's most advanced open source database, with a global community of thousands of users, contributors, companies and organizations. Built on over 35 years of engineering, starting at the University of California, Berkeley, PostgreSQL has continued with an unmatched pace of development. PostgreSQL's mature feature set not only matches top proprietary database systems, but exceeds them in advanced database features, extensibility, security, and stability. ### Links * [Download](https://www.postgresql.org/download/) * [Release Notes](https://www.postgresql.org/docs/16/release-16.html) * [Press Kit](https://www.postgresql.org/about/press/) * [Security Page](https://www.postgresql.org/support/security/) * [Versioning Policy](https://www.postgresql.org/support/versioning/) * [Follow @postgresql](https://twitter.com/postgresql) * [Donate](https://www.postgresql.org/about/donate/) ## More About the Features For explanations of the above features and others, please see the following resources: * [Release Notes](https://www.postgresql.org/docs/16/release-16.html) * [Feature Matrix](https://www.postgresql.org/about/featurematrix/) ## Where to Download There are several ways you can download PostgreSQL 16, including: * The [Official Downloads](https://www.postgresql.org/download/) page, with contains installers and tools for [Windows](https://www.postgresql.org/download/windows/), [Linux](https://www.postgresql.org/download/linux/), [macOS](https://www.postgresql.org/download/macosx/), and more. * [Source Code](https://www.postgresql.org/ftp/source/v16.0) Other tools and extensions are available on the [PostgreSQL Extension Network](http://pgxn.org/). ## Documentation PostgreSQL 16 comes with HTML documentation as well as man pages, and you can also browse the documentation online in both [HTML](https://www.postgresql.org/docs/16/) and [PDF](https://www.postgresql.org/files/documentation/pdf/16/postgresql-16-US.pdf) formats. ## Licence PostgreSQL uses the [PostgreSQL License](https://www.postgresql.org/about/licence/), a BSD-like "permissive" license. This [OSI-certified license](http://www.opensource.org/licenses/postgresql/) is widely appreciated as flexible and business-friendly, since it does not restrict the use of PostgreSQL with commercial and proprietary applications. Together with multi-company support and public ownership of the code, our license makes PostgreSQL very popular with vendors wanting to embed a database in their own products without fear of fees, vendor lock-in, or changes in licensing terms. ## Contacts Website * [https://www.postgresql.org/](https://www.postgresql.org/) Email * [[email protected]](mailto:[email protected]) ## Images and Logos Postgres, PostgreSQL, and the Elephant Logo (Slonik) are all registered trademarks of the [PostgreSQL Community Association of Canada](https://www.postgres.ca). If you wish to use these marks, you must comply with the [trademark policy](https://www.postgresql.org/about/policies/trademarks/). ## Corporate Support PostgreSQL enjoys the support of numerous companies, who sponsor developers, provide hosting resources, and give us financial support. See our [sponsors](https://www.postgresql.org/about/sponsors/) page for some of these project supporters. There is also a large community of [companies offering PostgreSQL Support](https://www.postgresql.org/support/professional_support/), from individual consultants to multinational companies. If you wish to make a financial contribution to the PostgreSQL Global Development Group or one of the recognized community non-profit organizations, please visit our [donations](https://www.postgresql.org/about/donate/) page. Attachments: [text/plain] release.en.md (9.2K, 2-release.en.md) download | inline: September 14, 2023 - The PostgreSQL Global Development Group today announced the release of PostgreSQL 16, the latest version of the world's most advanced open source database. PostgreSQL 16 raises its performance, with notable improvements to query parallelism, bulk data loading, and logical replication. There are many features in this release for developers and administrators alike, including more SQL/JSON syntax, new monitoring stats for your workloads, and greater flexibility in defining access control rules for management of policies across large fleets. <HOLD FOR QUOTE> PostgreSQL, an innovative data management system known for its reliability and robustness, benefits from over 25 years of open source development from a global developer community and has become the preferred open source relational database for organizations of all sizes. ### Performance Improvements PostgreSQL 16 improves the performance of existing PostgreSQL functionality through new query planner optimizations. In this latest release, the query planner can parallelize `FULL` and `RIGHT` joins, utilize incremental sorts for `SELECT DISTINCT` queries, and optimize window function executions so they execute more efficiently. It also introduces `RIGHT` and `OUTER` "anti-joins", which enable users to identify rows not present in a joined table. This release includes improvements for bulk loading using `COPY` in both single and concurrent operations, with tests showing up to a 300% performance improvement in some cases. PostgreSQL adds support for load balancing in clients that use `libpq`, and improvements to vacuum strategy that reduce the necessity of full-table freezes. Additionally, PostgreSQL 16 introduces CPU acceleration using `SIMD` in both x86 and ARM architectures, resulting in performance gains when processing ASCII and JSON strings, and performing array and subtransaction searches. ### Logical replication Logical replication lets PostgreSQL users stream data to other PostgreSQL instances or subscribers that can interpret the PostgreSQL logical replication protocol. In PostgreSQL 16, users can perform logical decoding from a standby instance, meaning a standby can publish logical changes to other servers. This provides developers with new workload distribution options – for example, using a standby rather than the busier primary to logically replicate changes to downstream systems. Additionally, there are several performance improvements in PostgreSQL 16 to logical replication. Subscribers can now apply large transactions using parallel workers. For tables that do not have a `PRIMARY KEY`, subscribers can use B-tree indexes instead of sequential scans to find rows. Under certain conditions, users can also speed up initial table synchronization using the binary format. There are several access control improvements to logical replication in PostgreSQL 16, including the new predefined role pg_create_subscription, which grants users the ability to create a new logical subscription. Finally, this release begins adding support for bidirectional logical replication, introducing functionality to replicate data between two tables from different publishers. ### Developer Experience PostgreSQL 16 adds more syntax from the SQL/JSON standard, including constructors and predicates such as `JSON_ARRAY()`, `JSON_ARRAYAGG()`, and `IS JSON`. This release also introduces the ability to use underscores for thousands separators (e.g. `5_432_000`) and non-decimal integer literals, such as `0x1538`, `0o12470`, and `0b1010100111000`. Developers using PostgreSQL 16 will also benefit from the addition of multiple commands to `psql` client protocol, including the `\bind` command, which allows users to execute parameterized queries (e.g `SELECT $1 + $2`) then use `\bind` to substitute the variables. PostgreSQL 16 improves general support for text collations, which provide rules for how text is sorted. PostgreSQL 16 builds with ICU support by default, determines the default ICU locale from the environment, and allows users to define custom ICU collation rules. ### Monitoring A key aspect of tuning the performance of database workloads is understanding the impact of your I/O operations on your system. PostgreSQL 16 helps simplify how you can analyze this data with the new pg_stat_io view, which tracks key I/O statistics such as shared_buffer hits and I/O latency. Additionally, this release adds a new field to the `pg_stat_all_tables` view that records a timestamp representing when a table or index was last scanned. PostgreSQL also makes auto_explain more readable by logging values passed into parameterized statements, and improves accuracy of pg_stat_activity's normalization algorithm. ### Access Control & Security PostgreSQL 16 provides finer-grained options for access control and enhances other security features. The release improves management of `pg_hba.conf` and `pg_ident.conf` files, including allowing regular expression matching for user and database names and "include" directives for external configuration files. This release adds several security-oriented client connection parameters, including require_auth, which allows clients to specify which authentication parameters they are willing to accept from a server, and `sslrootcert="system"`, which indicates that PostgreSQL should use the trusted certificate authority (CA) store provided by the client's operating system. Additionally, the release adds support for Kerberos credential delegation, allowing extensions such as `postgres_fdw` and `dblink` to use authenticated credentials to connect to trusted services. ### About PostgreSQL [PostgreSQL](https://www.postgresql.org) is the world's most advanced open source database, with a global community of thousands of users, contributors, companies and organizations. Built on over 35 years of engineering, starting at the University of California, Berkeley, PostgreSQL has continued with an unmatched pace of development. PostgreSQL's mature feature set not only matches top proprietary database systems, but exceeds them in advanced database features, extensibility, security, and stability. ### Links * [Download](https://www.postgresql.org/download/) * [Release Notes](https://www.postgresql.org/docs/16/release-16.html) * [Press Kit](https://www.postgresql.org/about/press/) * [Security Page](https://www.postgresql.org/support/security/) * [Versioning Policy](https://www.postgresql.org/support/versioning/) * [Follow @postgresql](https://twitter.com/postgresql) * [Donate](https://www.postgresql.org/about/donate/) ## More About the Features For explanations of the above features and others, please see the following resources: * [Release Notes](https://www.postgresql.org/docs/16/release-16.html) * [Feature Matrix](https://www.postgresql.org/about/featurematrix/) ## Where to Download There are several ways you can download PostgreSQL 16, including: * The [Official Downloads](https://www.postgresql.org/download/) page, with contains installers and tools for [Windows](https://www.postgresql.org/download/windows/), [Linux](https://www.postgresql.org/download/linux/), [macOS](https://www.postgresql.org/download/macosx/), and more. * [Source Code](https://www.postgresql.org/ftp/source/v16.0) Other tools and extensions are available on the [PostgreSQL Extension Network](http://pgxn.org/). ## Documentation PostgreSQL 16 comes with HTML documentation as well as man pages, and you can also browse the documentation online in both [HTML](https://www.postgresql.org/docs/16/) and [PDF](https://www.postgresql.org/files/documentation/pdf/16/postgresql-16-US.pdf) formats. ## Licence PostgreSQL uses the [PostgreSQL License](https://www.postgresql.org/about/licence/), a BSD-like "permissive" license. This [OSI-certified license](http://www.opensource.org/licenses/postgresql/) is widely appreciated as flexible and business-friendly, since it does not restrict the use of PostgreSQL with commercial and proprietary applications. Together with multi-company support and public ownership of the code, our license makes PostgreSQL very popular with vendors wanting to embed a database in their own products without fear of fees, vendor lock-in, or changes in licensing terms. ## Contacts Website * [https://www.postgresql.org/](https://www.postgresql.org/) Email * [[email protected]](mailto:[email protected]) ## Images and Logos Postgres, PostgreSQL, and the Elephant Logo (Slonik) are all registered trademarks of the [PostgreSQL Community Association of Canada](https://www.postgres.ca). If you wish to use these marks, you must comply with the [trademark policy](https://www.postgresql.org/about/policies/trademarks/). ## Corporate Support PostgreSQL enjoys the support of numerous companies, who sponsor developers, provide hosting resources, and give us financial support. See our [sponsors](https://www.postgresql.org/about/sponsors/) page for some of these project supporters. There is also a large community of [companies offering PostgreSQL Support](https://www.postgresql.org/support/professional_support/), from individual consultants to multinational companies. If you wish to make a financial contribution to the PostgreSQL Global Development Group or one of the recognized community non-profit organizations, please visit our [donations](https://www.postgresql.org/about/donate/) page. [application/pgp-signature] OpenPGP_signature (840B, 3-OpenPGP_signature) download ^ permalink raw reply [nested|flat] 5+ messages in thread
* Re: PostgreSQL 16 release announcement @ 2023-08-25 11:51 Cédric Villemain <[email protected]> parent: Jonathan S. Katz <[email protected]> 1 sibling, 0 replies; 5+ messages in thread From: Cédric Villemain @ 2023-08-25 11:51 UTC (permalink / raw) To: Jonathan S. Katz <[email protected]>; PostgreSQL Advocacy <[email protected]>; +Cc: [email protected] Le 19/08/2023 à 21:39, Jonathan S. Katz a écrit : > Hi, > > Attached is the first draft of the PostgreSQL 16 release announcement, > authored by Chelsea Dole & myself. > > To frame this up, the goal of the GA release announcement is to help > folks discover the awesome new features of PostgreSQL. It's impossible > to list out every single feature in the release and still have a > coherent announcement, so we try to target features that have the > broadest range of impact. > > It's possible we missed or incorrectly stated something, so please > provide feedback if we did so. In "performance" section: « It also introduces `RIGHT` and `OUTER` "anti-joins", which enable users to identify rows not present in a joined table.» It's a bit confusing for me: is it about the planner improvements or there is something else ? --- Cédric Villemain +33 (0)6 20 30 22 52 https://Data-Bene.io PostgreSQL Expertise, Support, Training, R&D ^ permalink raw reply [nested|flat] 5+ messages in thread
end of thread, other threads:[~2023-08-25 11:51 UTC | newest] Thread overview: 5+ messages (download: mbox mbox.gz follow: Atom feed) -- links below jump to the message on this page -- 2023-08-19 19:39 PostgreSQL 16 release announcement Jonathan S. Katz <[email protected]> 2023-08-21 09:32 ` Daniel Gustafsson <[email protected]> 2023-08-21 11:07 ` Dave Cramer <[email protected]> 2023-08-23 17:55 ` Jonathan S. Katz <[email protected]> 2023-08-25 11:51 ` Cédric Villemain <[email protected]>
This inbox is served by agora; see mirroring instructions for how to clone and mirror all data and code used for this inbox