PostgreSQL 15

PostgreSQL 15 is the future development version of PostgreSQL, likely to be released in late 2022.

Initial commit marking the start of PostgreSQL 15 development is 596b5af1 (2021-06-28).

CommitFests

Following CommitFests are for PostgreSQL 15 code submissions:

Backend changes

General

postmaster

  • option --forkboot renamed to --forkaux (commit 50017f77)
  • CREATE privilege on the public schema is now always revoked by default from PUBLIC, and it is now owned by pg_database_owner role (commit b073c3cc)

Data type changes

  • NUMERIC scale can be negative or greater than precision (commit 085f931f)

Partitioning changes

SQL changes

Modified:

System catalog changes

Tables

Modified:

Views

Added:

System function changes

Added:

Modified:

Configuration changes

Added:

Modified:

Users / roles

Replication changes

Logical replication

  • support for prepared transactions added (commit a8fd13ca)
  • support for for streaming prepared transactions added (commit 63cf61cd)
  • support for publishing all tables of a schema added (commit 5a283246)

Replication protocol

  • TWO_PHASE option added to CREATE_REPLICATION_SLOT (commit cda03cfe)

Core utilities

Server utilities

psql

  • new environment variable PSQL_WATCH_PAGER for setting a pager for psql's \watch command (commit 7c09d279)
  • \getenv slash command added (commit 33d3eead)
  • \lo_list/\dl now display large objects' ACLs when the + option is provided (commit 328dfbda)
  • support for versions before PostgreSQL 9.2 removed (commit cf0cab86)

Contrib modules

  • btree_gist
    • bool opclass added to allow creating GiST indexes on boolean columns (commit 57e3c516)
  • postgres_fdw
    • CASE expressions can be pushed to the remote server (commit 5d44fff0)
    • remote connection's application_name can be set via GUC postgres_fdw.application_name (commit 449ab635)
    • postgres_fdw.application_name can include escape sequences (commit 6e0cb3de)
    • report warning when timeout expiration occurs while retrieving a query result (commit 815d61fc)