diff --git a/configure b/configure index cda97ce3c4e..da28a6bb8b0 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for PostgreSQL 15beta2. +# Generated by GNU Autoconf 2.69 for PostgreSQL 16devel. # # Report bugs to . # @@ -582,8 +582,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='PostgreSQL' PACKAGE_TARNAME='postgresql' -PACKAGE_VERSION='15beta2' -PACKAGE_STRING='PostgreSQL 15beta2' +PACKAGE_VERSION='16devel' +PACKAGE_STRING='PostgreSQL 16devel' PACKAGE_BUGREPORT='pgsql-bugs@lists.postgresql.org' PACKAGE_URL='https://www.postgresql.org/' @@ -1454,7 +1454,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures PostgreSQL 15beta2 to adapt to many kinds of systems. +\`configure' configures PostgreSQL 16devel to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1519,7 +1519,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of PostgreSQL 15beta2:";; + short | recursive ) echo "Configuration of PostgreSQL 16devel:";; esac cat <<\_ACEOF @@ -1693,7 +1693,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -PostgreSQL configure 15beta2 +PostgreSQL configure 16devel generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2446,7 +2446,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by PostgreSQL $as_me 15beta2, which was +It was created by PostgreSQL $as_me 16devel, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -20415,7 +20415,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by PostgreSQL $as_me 15beta2, which was +This file was extended by PostgreSQL $as_me 16devel, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -20486,7 +20486,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -PostgreSQL config.status 15beta2 +PostgreSQL config.status 16devel configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index b7622e9c3f6..fada092cf38 100644 --- a/configure.ac +++ b/configure.ac @@ -17,7 +17,7 @@ dnl Read the Autoconf manual for details. dnl m4_pattern_forbid(^PGAC_)dnl to catch undefined macros -AC_INIT([PostgreSQL], [15beta2], [pgsql-bugs@lists.postgresql.org], [], [https://www.postgresql.org/]) +AC_INIT([PostgreSQL], [16devel], [pgsql-bugs@lists.postgresql.org], [], [https://www.postgresql.org/]) m4_if(m4_defn([m4_PACKAGE_VERSION]), [2.69], [], [m4_fatal([Autoconf version 2.69 is required. Untested combinations of 'autoconf' and PostgreSQL versions are not diff --git a/doc/src/sgml/filelist.sgml b/doc/src/sgml/filelist.sgml index 51dca793223..de450cd6619 100644 --- a/doc/src/sgml/filelist.sgml +++ b/doc/src/sgml/filelist.sgml @@ -176,7 +176,7 @@ - + diff --git a/doc/src/sgml/release-15.sgml b/doc/src/sgml/release-15.sgml deleted file mode 100644 index 47ac329e793..00000000000 --- a/doc/src/sgml/release-15.sgml +++ /dev/null @@ -1,3410 +0,0 @@ - - Release 15 - - - Release date: - AS OF 2022-06-11 - - - - Overview - - - PostgreSQL 15 contains many new features - and enhancements, including: - - - - - - - - The above items and other new features of - PostgreSQL 15 are explained in more detail - in the sections below. - - - - - - - Migration to Version 15 - - - 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 15 contains a number of changes that may affect compatibility - with previous releases. Observe the following incompatibilities: - - - - - - - - - Remove PUBLIC creation permission on the public schema - (Noah Misch) - - - - This is a change in the default for newly-created databases in - existing clusters and for new clusters; USAGE - permissions on the public schema has not - been changed. Databases restored from previous Postgres releases - will be restored with their current permissions. Users wishing - to have the former permissions will need to grant - CREATE permission for PUBLIC - on the public schema; this change can be made - on template1 to cause all new databases - to have these permissions. - - - - - - - - Change the owner of the public schema to - pg_database_owner (Noah Misch) - - - - Previously it was the literal user name of the bootstrap superuser. - Databases restored from previous Postgres releases will be restored - with their current owner specification. - - - - - - - - Remove long-deprecated exclusive backup mode (David Steele, - Nathan Bossart) - - - - If the database server stops abruptly while in this mode, the - server could fail to start. The non-exclusive backup mode requires - a continuous database connection during the backup. Functions - pg_start_backup()/pg_stop_backup() - have been renamed to - pg_backup_start()/pg_backup_stop(), - and the functions pg_backup_start_time() - and pg_is_in_backup() have been removed. - - - - - - - - Increase hash_mem_multiplier - default to 2.0 (Peter Geoghegan) - - - - This allows query hash operations to use double the amount of - work_mem - memory as other operations. - - - - - - - - Remove server-side language plpython2u and generic - Python language plpythonu (Andres Freund) - - - - - - - - Mark the interval output - function as stable, not immutable, since it depends on IntervalStyle - (Tom Lane) - - - - This will cause the creation of indexes relying on the text output - of interval values to fail. - - - - - - - - Generate an error if array_to_tsvector() - is passed an empty array element (Jean-Christophe Arnu) - - - - This is prohibited because lexemes should never be empty. Users of - previous Postgres releases should verify that no empty lexemes - are stored because they can lead to dump/restore failures and - inconsistent results. - - - - - - - - Generate an error when chr() - is supplied with a negative argument (Peter Eisentraut) - - - - - - - - Prevent Unicode zero-length identifiers, e.g., U&"" - (Peter Eisentraut) - - - - Non-Unicode zero-length identifiers were already prevented. - - - - - - - - Remove pg_dump's - option since all - supported server versions support synchronized snapshots (Tom Lane) - - - - - - - - Prevent CREATE OR REPLACE - VIEW from changing the collation of an output column - (Tom Lane) - - - - - - - - Prevent numeric - literals from having non-numeric trailing characters (Peter - Eisentraut) - - - - Previously literals like 123abc would be - interpreted as 123 and abc. - - - - - - - - Adjust JSON - numeric literal processing to match the - SQL/JSON-standard (Peter - Eisentraut) - - - - This accepts numeric formats like .1 and - 1., and disallows trailing junk after numeric - literals, like 1.type(). - - - - - - - - Improve consistency of interval parsing with trailing - periods (Tom Lane) - - - - Some platforms disallowed trailing periods. - - - - - - - - When specifying fractional interval values in units greater than - months, round to the nearest month (Bruce Momjian) - - - - For example, report 1.99 years as 2 - years, not 1 year 11 months. - - - - - - - - Detect integer overflow in interval justification - functions (Joe Koshakow) - - - - Specifically, functions justify_interval(), - justify_hours(), and - justify_days() are affected. - - - - - - - - Remove the default ADMIN - OPTION privilege a login role has on its own role - membership (Robert Haas) - - - - Previously, login roles could add/remove members of its own role, - even without ADMIN OPTION privilege. - - - - - - - - Allow logical replication - to run as the owner of the subscription (Mark Dilger) - - - - Because row-level security policies are not checked, only superusers, - roles with bypassrls, and table owners can - replicate into tables with row-level security policies. - - - - - - - - Prevent UPDATE and DELETE - logical replication - operations on tables where the subscription owner does not have - SELECT permission on the table (Jeff Davis) - - - - UPDATE and DELETE perform - SELECT, so require the subscription owner to - have table SELECT permission. - - - - - - - - When EXPLAIN - references the temporary object schema, refer to it as - pg_temp (Amul Sul) - - - - Previously the actual schema name was used. - - - - - - - - Modify SPI's - SPI_commit() and - SPI_commit_and_chain() to automatically start - a new transaction at completion (Peter Eisentraut, Tom Lane) - - - - BACKPATCHED? - - - - - - - - Fix pg_statio_all_tables - to sum values for the rare case of TOAST tables - with multiple indexes (Andrei Zubkov) - - - - Previously such cases would have one row for each index. - - - - - - - - Disallow setting of server - variables matching the prefixes of installed extension - (Florin Irion, Tom Lane) - - - - This also deletes any matching server variables during extension - load. - - - - - - - - Remove unnecessary server variable - stats_temp_directory (Andres Freund, Kyotaro - Horiguchi) - - - - - - - - Improve the algorithm used to compute random() - (Fabien Coelho) - - - - This will cause random() to differ from what - was emitted by prior versions for the same seed values. - - - - - - - - Reduce casting of constants in postgres_fdw queries (Dian Fay) - - - - If column types were mismatched between local and remote databases, - such casting could cause errors. - - - - - - - - Remove xml2's function - xml_is_well_formed() (Tom Lane) - - - - This function has been implemented in the core backend since - Postgres 9.1. - - - - - - - - Allow custom scan provders - to indicate if they support projections (Sven Klemm) - - - - The default is now that custom scan providers can't support - projections, so they need to be updated for this release. - - - - - - - - - Changes - - - Below you will find a detailed account of the changes between - PostgreSQL 15 and the previous major - release. - - - - Server - - - - - - - - Record and check the collation of each database (Peter Eisentraut) - - - - This is designed to detect collation - mismatches to avoid data corruption. Function - pg_database_collation_actual_version() - reports the underlying operating system collation version, and - ALTER DATABASE ... REFRESH sets the database - to match the operating system collation version. DETAILS? - - - - - - - - Allow ICU - collations to be set as the default for clusters and databases - (Peter Eisentraut) - - - - Previously, ICU collations could only be - specified in CREATE - COLLATION and used with the - COLLATE clause. - - - - - - - - Add system view pg_ident_file_mappings - to report pg_ident.conf information (Julien - Rouhaud) - - - - - - - <link linkend="ddl-partitioning">Partitioning</link> - - - - - - - - Improve planning time for queries referencing partitioned tables - (David Rowley) - - - - Specifically this helps if only a small number of the many - partitions are relevant. - - - - - - - - Allow ordered scans of partitions to avoid sorting in more cases - (David Rowley) - - - - Previously, a partitioned table with a DEFAULT - partition or a LIST partition containing - multiple values could not be used for ordered partition scans. - Now they can be used if these partitions are pruned. - - - - - - - - Improve foreign key behavior of updates on partitioned tables - that move rows between partitions (Amit Langote) - - - - Previously, such updates ran delete actions on the source - partition and insert actions on the target partition. - PostgreSQL will now run update actions - on the referenced partition root. - - - - - - - - Allow CLUSTER - on partitioned tables (Justin Pryzby) - - - - - - - - Fix ALTER TRIGGER - RENAME on partitioned tables to properly rename - triggers an all partitions (Arne Roland, Álvaro Herrera) - - - - Also prohibit cloned triggers from being renamed. - - - - - - - - - Indexes - - - - - - - - Enable system and TOAST btree - indexes to efficiently store duplicates (Peter Geoghegan) - - - - Previously de-duplication was disabled for these types of indexes. - - - - - - - - Improve lookup performance of GiST indexes built using - sorting (Aliaksandr Kalenik, Sergei Shoulbakov, Andrey Borodin) - - - - - - - - Prevent changes to columns only indexed by BRIN indexes from - disabling HOT updates (Josef Simanek) - - - - - - - - Allow unique constraints and indexes to treat - NULL values as not distinct (Peter Eisentraut) - - - - Previously NULL values were always indexed - as distinct values, but this can now be changed by creating - constraints and indexes using UNIQUE NULLS NOT - DISTINCT. - - - - - - - - Allow ^@ - and starts_with() to use btree indexes if - using a C collation (Tom Lane) - - - - Previously these could only use SP-GiST indexes. - - - - - - - - - Optimizer - - - - - - - - Allow extended - statistics to record statistics for a parent with all its - children (Tomas Vondra, Justin Pryzby) - - - - Regular statistics already tracked parent and parent/all-children - statistics separately. - - - - - - - - Allow GROUP - BY sorting to optimize column order (Dmitry - Dolgov, Teodor Sigaev, Tomas Vondra) - - - - This optimization can be disabled using the server variable enable_group_by_reordering. - - - - - - - - Add server variable recursive_worktable_factor - to allow the user to specify the expected recursive query worktable - size (Simon Riggs) - - - - WHAT IS A WORKTABLE? NOT DEFINED. - - - - - - - - - General Performance - - - - - - - - Allow hash lookup for NOT IN - clauses with many constants (David Rowley, James Coleman) - - - - Previously the code always sequentially scanned the list of values. - - - - - - - - Improve validation of UTF-8 text (even if - only ASCII) by processing 16 bytes at a time - (John Naylor, Heikki Linnakangas) - - - - This will improve text-heavy operations like COPY FROM. - - - - - - - - Improve performance for sorts that exceed work_mem - (Heikki Linnakangas) - - - - Specifically, switch to a batch sorting algorithm that uses more - output streams internally. - - - - - - - - Improve performance and reduce memory consumption of in-memory - sorts (Ronan Dunklau, David Rowley, Thomas Munro, John Naylor) - - - - - - - - Allow WAL full page writes to use - LZ4 and Zstandard compression (Andrey Borodin, Justin Pryzby) - - - - This is controlled by the wal_compression - server setting. - - - - - - - - Add direct I/O support - to macOS (Thomas Munro) - - - - This only works if max_wal_senders=0 - and wal_level=minimal, and only for - WAL. - - - - - - - - Allow vacuum to be more - aggressive in setting the oldest frozenxid (Peter Geoghegan) - - - - - - - - Allow a query referencing multiple foreign tables to perform - parallel foreign table scans in more cases (Andrey Lepikhov, - Etsuro Fujita) - - - - - - - - Improve the performance of window - functions that use row_number(), - rank(), and count() - (David Rowley) - - - - - - - - Improve the performance of spinlocks on high-core-count ARM64 - systems (Geoffrey Blake) - - - - - - - - - Monitoring - - - - - - - - Enable default logging of checkpoints and slow autovacuum - operations (Bharath Rupireddy) - - - - Specifically, this changes the default of log_checkpoints - to on and log_autovacuum_min_duration - to 10 minutes. This will cause idle servers to generate log - output, which might cause problems on resource-constrained - servers with insufficient log file removal. The defaults should - be changed in such cases. - - - - - - - - Generate periodic log message during slow server starts (Nitin - Jadhav, Robert Haas) - - - - Messages report the cause of the delay. The time interval for - notification is controlled by the new server variable log_startup_progress_interval. - - - - - - - - Store server-level - statistics in shared memory (Kyotaro Horiguchi, Andres - Freund, Melanie Plageman) - - - - Previously this was updated via UDP packets, - stored in the file system, and read by sessions. There is no - longer a statistics collector process. - - - - - - - - Add additional information to VACUUM VERBOSE - and autovacuum logging messages (Peter Geoghegan) - - - - - - - - Add EXPLAIN - (BUFFERS) output for temporary file block I/O - (Masahiko Sawada) - - - - - - - - Allow log output in - JSON format (Sehrope Sarkuni, Michael Paquier) - - - - The new setting is log_destination=jsonlog. - - - - - - - - Allow pg_stat_reset_single_table_counters() - to reset the counters of relations shared across all databases - (B Sadhu, Prasad Patro) - - - - - - - - Add wait events for local - shell commands (Fujii Masao) - - - - Specifically the new wait events are related to - commands archive_command, - archive_cleanup_command, - restore_command and - recovery_end_command. - - - - - - - - - Privileges - - - - - - - - Allow view access to be - controlled by privileges of the view user (Christoph Heiss) - - - - Previously, view access could only be based on the view owner. - - - - - - - - Allow members of the pg_write_server_files - predefined role to perform server-side base backups (Dagfinn - Ilmari Mannsåker) - - - - Previously only the superusers could perform such backups. - - - - - - - - Allow GRANT - to assign permission to change server variables via - SET and ALTER SYSTEM - (Mark Dilger) - - - - New function has_parameter_privilege() - reports on this privilege. - - - - - - - - Add predefined role pg_checkpointer - that allows members to run CHECKPOINT - (Jeff Davis) - - - - Previously checkpoints could only be run by superusers. - - - - - - - - Allow members of the pg_read_all_stats - predefined role to access the views pg_backend_memory_contexts - and pg_shmem_allocations - (Bharath Rupireddy) - - - - Previously these views could only be accessed by superusers. - - - - - - - - Allow GRANT - to assign permissions on pg_log_backend_memory_contexts() - (Jeff Davis) - - - - Previously this function could only be run by superusers. - - - - - - - - - Server Configuration - - - - - - - - Add server variable shared_memory_size - to report the size of allocated shared memory (Nathan Bossart) - - - - - - - - Add server variable shared_memory_size_in_huge_pages - to report the number of huge memory pages required (Nathan Bossart) - - - - This is only supported on Linux. - - - - - - - - Allow postgres - -C to properly report runtime-computed values - (Nathan Bossart) - - - - Previously runtime-computed values data_checksums, - wal_segment_size, - and data_directory_mode - would report values that would not be accurate on the running - server. However, this does not work on a running server. - - - - - - - - - - - Streaming Replication and Recovery - - - - - - - - Add support for LZ4 and Zstandard compression of server-side base backups (Jeevan Ladhe, - Robert Haas) - - - - - - - - Run checkpointer and bgwriter during crash recovery (Thomas Munro) - - - - - - - - Allow WAL processing to pre-fetch needed file - contents (Thomas Munro) - - - - This is controlled by the server variable recovery_prefetch. - - - - - - - - Add server variable archive_library - to specify the library to be called for archiving (Nathan Bossart) - - - - Previously only shell commands could be called to perform archiving. - - - - - - - - No longer require IDENTIFY_SYSTEM - to be run before START_REPLICATION (Jeff Davis) - - - - - - - <link linkend="logical-replication">Logical Replication</link> - - - - - - - - Allow publication of all tables in a schema (Vignesh C, Hou Zhijie, - Amit Kapila) - - - - For example, this syntax is now supported: CREATE PUBLICATION pub1 - FOR ALL TABLES IN SCHEMA s1,s2; ALTER - PUBLICATION supports a similar syntax. Tables added - to the listed schemas in the future will also be replicated. - - - - - - - - Allow publication content to be filtered using a - WHERE clause (Hou Zhijie, Euler Taveira, - Peter Smith, Ajin Cherian, Tomas Vondra, Amit Kapila) - - - - - - - - Allow publications to - be restricted to specific columns (Tomas Vondra, Álvaro Herrera, - Rahila Syed) - - - - - - - - Allow skipping of transactions on a subscriber using ALTER SUBSCRIPTION - ... SKIP (Masahiko Sawada) - - - - - - - - Add support for prepared transactions to built-in logical - replication (Peter Smith, Ajin Cherian, Amit Kapila, Nikhil - Sontakke, Stas Kelvich) - - - - - - - - Add two-phase information to the logical replication stream - (Ajin Cherian) - - - - The new CREATE_REPLICATION_SLOT - option is called TWO_PHASE. - pg_recvlogical now supports a new - option during slot creation. - - - - - - - - Prevent logical replication of empty transactions (Ajin Cherian, - Hou Zhijie, Euler Taveira) - - - - Previously, write transactions would send empty transactions to - subscribers if subscribed tables were not modified. - - - - - - - - Add SQL functions to monitor the directory - contents of logical replication slots (Bharath Rupireddy) - - - - Specifically, the functions are pg_ls_logicalsnapdir(), - pg_ls_logicalmapdir(), and - pg_ls_replslotdir(). They can be run by - members of the predefined pg_monitor role. - - - - - - - - Allow subscribers to stop logical replication application on error - (Osumi Takamichi, Mark Dilger) - - - - This is enabled with the subscriber option disable_on_error - and avoids possible infinite error loops during stream application. - - - - - - - - Adjust subscriber server variables to match the publisher so - datetime and float8 values are interpreted consistently (Japin Li) - - - - Some publishers might be relying on inconsistent behavior. - - - - - - - - Add system view pg_stat_subscription_stats - to report on subscriber activity (Masahiko Sawada) - - - - New function pg_stat_reset_subscription_stats() - allows the resetting of subscriber statistics. - - - - - - - - Remove incorrect duplicate partitions in system view pg_publication_tables - (Hou Zhijie) - - - - - - - - - - - <link linkend="sql-select"><command>SELECT</command></link>, <link linkend="sql-insert"><command>INSERT</command></link> - - - - - - - - Allow SELECT DISTINCT to be parallelized - (David Rowley) - - - - - - - - - Utility Commands - - - - - - - - Add SQL MERGE command to - adjust one table to match another (Simon Riggs, Pavan Deolasee, - Álvaro Herrera, Amit Langote) - - - - This is similar to INSERT ... ON CONFLICT - but more batch-oriented. - - - - - - - - Add support for HEADER option in COPY text format - (Rémi Lapeyre) - - - - The new option causes the column names to be output, and optionally - verified on input. - - - - - - - - Add new default WAL-logged method for database creation (Dilip Kumar) - - - - This avoids the need for checkpoints during database creation; - the old method is still available. - - - - - - - - Allow CREATE - DATABASE to set the database OID - (Shruthi KC, Antonin Houska) - - - - - - - - Prevent DROP - DATABASE, DROP - TABLESPACE, and ALTER DATABASE SET - TABLESPACE from occasionally failing during - concurrent use on Windows (Thomas Munro) - - - - - - - - Allow foreign key ON - DELETE SET actions to affect only specified columns - (Paul Martinez) - - - - Previously, all of the columns in the foreign key were always - affected. - - - - - - - - Allow ALTER - TABLE to modify a table's ACCESS - METHOD (Justin Pryzby, Jeff Davis) - - - - - - - - Properly call object access hooks when ALTER TABLE - causes table rewrites (Michael Paquier) - - - - - - - - - Data Types - - - - - - - - Allow numeric - scale to be negative or greater than precision (Dean Rasheed, - Tom Lane) - - - - This allows rounding of values to the left of the decimal point, - e.g., '1234'::numeric(4, -2) returns 1200. - - - - - - - - Improve overflow detection when casting values to interval (Joe Koshakow) - - - - - - - - Allow the creation of unlogged sequences (Peter Eisentraut) - - - - - - - - Update the display width information of modern Unicode characters, - like emojis (Jacob Champion) - - - - Also update from Unicode 5.0 to 14.0.0. There is now an automated - way to keep Postgres updated with Unicode releases. - - - - - - - - - Functions - - - - - - - - Add multirange input to range_agg() - (Paul Jungwirth) - - - - - - - - Add MIN() - and MAX() aggregates for the xid8 data type (Ken Kato) - - - - - - - - Add regular expression functions for compatibility with other - relational systems (Gilles Darold, Tom Lane) - - - - Specifically, the new functions are regexp_count(), - regexp_instr(), - regexp_like(), and - regexp_substr(). Some new optional arguments - were also added to regexp_replace(). - - - - - - - - Add the ability to compute the distance between polygons (Tom Lane) - - - - - - - - Add to_char() - format codes of, tzh, and - tzm format codes (Nitin Jadhav) - - - - The upper-case versions of these were already supported. - - - - - - - - Improve the optimization of timetz_zone() by - stabilizing its value at transaction start (Aleksander Alekseev, - Tom Lane) - - - - HOW IS THIS USED? - - - - - - - - Allow tsvector_delete_arr() and - tsvector_setweight_by_filter() to accept - empty array elements (Jean-Christophe Arnu) - - - - These lexemes are not stored so the acceptance of empty array - elements is not a problem. NOT DOCUMENTED, USER API? - - - - - - - - Add support for petabyte units to pg_size_pretty() - and pg_size_bytes() (David Christensen) - - - - - - - - Change pg_event_trigger_ddl_commands() - to output references to non-local temporary schemas using the - actual schema name (Tom Lane) - - - - Previously this function referred to temporary schemas as - pg_temp. - - - - - - - <acronym>JSON</acronym> - - - - - - - - Add SQL/JSON-standard - JSON constructors (Nikita Glukhov) - - - - The construction functions are json(), - json_scalar(), and - json_serialize(), - json_array(), - json_arrayagg(), - json_object(), and - json_objectagg(). They have a few functional - advantages over the existing JSON functions. - - - - - - - - Add SQL/JSON - query functions json_exists(), - json_query(), and - json_value() (Nikita Glukhov) - - - - - - - - Add JSON predicates to test - JSON/JSONB values (Nikita Glukhov) - - - - The clauses are IS - JSON [ VALUE | - ARRAY - | OBJECT | SCALAR | - [WITH | WITHOUT ] - UNIQUE KEYS ]. - - - - - - - - Add function JSON_TABLE() - to cause JSON data to be treated as a table - (Nikita Glukhov) - - - - - - - - - - - <link linkend="plpgsql">PL/pgSQL</link> - - - - - - - - Fix enforcement of PL/pgSQL variable CONSTANT - markings (Tom Lane) - - - - Previously, a variable used as a CALL - output parameter or refcursor OPEN variable - would not enforce CONSTANT. - - - - - - - - - <link linkend="libpq">libpq</link> - - - - - - - - Allow IP address matching against a server - certificate's Subject Alternative Name (Jacob Champion) - - - - - - - - Allow PQsslAttribute() to report the - SSL library type without requiring a libpq - connection (Jacob Champion) - - - - - - - - Change query cancellations sent by the client to use the same - TCP settings as normal client connections - (Jelte Fennema) - - - - This allows configured TCP timeouts to apply - to query cancel connections. - - - - - - - - Prevent libpq event callback failures from forcing an error result - (Tom Lane) - - - - - - - - - Client Applications - - - - - - - - On Unix platforms, have client applications like psql - check HOME environment variable for the user's - home directory before checking the operating system definition - (Anders Kaseorg) - - - - - - - <xref linkend="app-psql"/> - - - - - - - - Improve performance of psql's \copy - command (Heikki Linnakangas) - - - - - - - - Add psql command \getenv - to assign the value of an environment variable to a - psql variable (Tom Lane) - - - - - - - - Add '+' option to psql's - \lo_list/\dl to show object - privileges (Pavel Luzanov) - - - - - - - - Add psql \dconfig to report server - variables (Mark Dilger, Tom Lane) - - - - This is similar to the server-side SHOW - command but can process patterns. - - - - - - - - Add pager option for psql's \watch - command (Pavel Stehule, Thomas Munro) - - - - This is only supported on Unix, and is controlled by - PSQL_WATCH_PAGER. - - - - - - - - Have psql send intra-query double-hyphen - comments to the server (Tom Lane, Greg Nancarrow) - - - - Previously such comments were removed from the query - before being sent. Double-hyphen comments that are before - query text are not sent, and are not recorded as separate - psql history entries. - - - - - - - - Adjust psql's readline meta-# to insert - a double-hyphen comment marker (Tom Lane) - - - - Previously an unhelpful pound marker was inserted. - - - - - - - - Have psql output all results if multiple - queries are passed to the server at once (Fabien Coelho) - - - - This can be disabled by setting SHOW_ALL_RESULTS. - - - - - - - - Improve psql's tab completion (Shinya - Kato, Dagfinn Ilmari Mannsåker, Peter Smith, Koyu Tanigawa, - Ken Kato, David Fetter, Haiying Tang, Peter Eisentraut, Álvaro - Herrera, Tom Lane, Masahiko Sawada) - - - - - - - - Limit support of psql to servers running - PostgreSQL 9.2 and later (Tom Lane) - - - - - - - - - - - Server Applications - - - - - - - - Add new pg_basebackup - option to control the base backup location - (Robert Haas) - - - - New output options are server to write the - backup locally and blackhole to discard the - backup (for testing). - - - - - - - - Allow pg_basebackup to use LZ4 and - Zstandard compression on server-side base backup files (Dipesh - Pandit, Jeevan Ladhe) - - - - - - - - Allow pg_basebackup's - option to control the compression - method and options (Michael Paquier, Robert Haas) - - - - New options include server-gzip (gzip - on the server), client-gzip (same as - gzip). - - - - - - - - Allow pg_basebackup to compress on - the server side and decompress on the client side before storage - (Dipesh Pandit) - - - - This is accomplished by specifying compression on the server side - and plain output format. - - - - - - - - Add the LZ4 compression method to pg_receivewal - (Georgios Kokolatos) - - - - This is enabled via --compress=lz4 and requires - binaries to be built using . - - - - - - - - Add additional capabilities to - pg_receivewal's - option (Georgios Kokolatos) - - - - - - - - Improve pg_receivewal's ability to - restart at the proper WAL location (Ronan - Dunklau) - - - - Previously, pg_receivewal would start - based on the WAL file stored in the local archive - directory, or at the sending server's current WAL - flush location. With this change, if the sending server is running - Postgres 15 or later, the local archive directory is empty, and - a replication slot is specified, the replication slot's restart - point will be used. - - - - - - - - Add pg_rewind option - to simplify use when server - configuration files are stored outside the data directory (Gunnar - Bluth) - - - - - - - - Allow pgbench to - retry after serialization and deadlock failures (Yugo Nagata, - Marina Polyakova) - - - - - - - <link linkend="app-pgdump"><application>pg_dump</application></link> - - - - - - - - Have pg_dump dump - public schema ownership changes and security - labels (Noah Misch) - - - - It also dumps public schema comments. - - - - - - - - Improve performance of dumping databases with many objects - (Tom Lane) - - - - This will also improve the performance of pg_upgrade. - - - - - - - - Improve the parallel pg_dump performance - of TOAST tables (Tom Lane) - - - - - - - - Add dump/restore option - to force restore to only use the default table access method - (Justin Pryzby) - - - - - - - - Limit support of pg_dump and pg_dumpall - to servers running PostgreSQL 9.2 and - later (Tom Lane) - - - - - - - - - <link linkend="pgupgrade"><application>pg_upgrade</application></link> - - - - - - - - Disable default status reporting during - pg_upgrade operation if the output is - not a terminal (Andres Freund) - - - - The status reporting output can be enabled for non-tty usage by - using . - - - - - - - - Have pg_upgrade report all databases - with invalid connection settings (Jeevan Ladhe) - - - - Previously only the first database with an invalid connection - setting was reported. - - - - - - - - Store pg_upgrade - temporary files in a new cluster subdirectory called - pg_upgrade_output.d (Justin Pryzby) - - - - Previously temporary files were stored in the current directory. - - - - - - - - Have pg_upgrade preserve relfilenodes, - tablespace, and database OIDs between old and new clusters - (Shruthi KC, Antonin Houska) - - - - - - - - Add a option to - pg_upgrade (Michael Paquier) - - - - This useful only for testing. - - - - - - - - Limit support of pg_upgrade to old - servers running PostgreSQL 9.2 and later - (Tom Lane) - - - - - - - - - <link linkend="pgwaldump"><application>pg_waldump</application></link> - - - - - - - - Allow pg_waldump to be filtered by - relation file node, block number, fork number, and full page images - (David Christensen, Thomas Munro) - - - - - - - - Have pg_waldump report statistics - before an interrupted exit (Bharath Rupireddy) - - - - For example, issuing a control-C in a terminal running - pg_waldump --stats --follow will report the - current statistics before exiting. This does not work on Windows. - - - - - - - - Improve descriptions of some transaction WAL - records reported by pg_waldump - (Masahiko Sawada, Michael Paquier) - - - - - - - - Allow pg_waldump to dump information - about multiple resource managers (Heikki Linnakangas) - - - - This is enabled by specifying the option - multiple times. - - - - - - - - - - - Documentation - - - - - - - - Add documentation for pg_encoding_to_char() - and pg_char_to_encoding() (Ian Lawrence - Barwick) - - - - - - - - Document the ^@ - starts-with operator (Tom Lane) - - - - - - - - - Source Code - - - - - - - - Add support for continuous integration testing using cirrus-ci - (Andres Freund, Thomas Munro, Melanie Plageman) - - - - - - - - Add configure option - to enable Zstandard builds (Jeevan Ladhe, Robert Haas, Michael - Paquier) - - - - - - - - Add module field which can be customized for non-community - PostgreSQL distributions (Peter - Eisentraut) - - - - A module field mismatch would generate an error. - - - - - - - - Create a new pg_type.typcategory - value for "char" (Tom Lane) - - - - Some internal-use-only types have also been assigned this column. - - - - - - - - Add new protocol message TARGET - to specify a new COPY method to be for base - backups (Robert Haas) - - - - Modify pg_basebackup - to use this method. - - - - - - - - Add new protocol message COMPRESSION - and COMPRESSION_DETAIL to specify the compression - method and options (Robert Haas) - - - - - - - - Remove server support for old BASE_BACKUP - command syntax and base backup protocol (Robert Haas) - - - - - - - - Add support for extensions to set custom backup targets (Robert - Haas) - - - - - - - - Allow extensions to define their own WAL - resource managers (Jeff Davis) - - - - - - - - Add function pg_settings_get_flags() - to get the flags of server-side variables (Justin Pryzby) - - - - - - - - Add server variable allow_in_place_tablespaces - for tablespace testing (Thomas Munro) - - - - - - - - Export all server variables on Windows using - PGDLLIMPORT (Robert Haas) - - - - Previously only specific variables where exported. - - - - - - - - Require OpenSSL to build pgcrypto - binaries (Peter Eisentraut) - - - - - - - - Disallow building with Python 2 - (Andres Freund) - - - - - - - - Adjust configure to require Perl - version 5.8.3 or later (Dagfinn Ilmari Mannsåker) - - - - - - - - - Additional Modules - - - - - - - - Add new module pg_walinspect - (Bharath Rupireddy) - - - - This gives SQL-level output similar to pg_waldump. - - - - - - - - Add module basic_archive - to perform archiving via a library (Nathan Bossart) - - - - - - - - Add module basebackup_to_shell - as a custom backup target (Robert Haas) contrib module. - - - - - - - - Add pg_stat_statements - output for temporary file block I/O (Masahiko Sawada) - - - - - - - - Add JIT counters to pg_stat_statements (Magnus - Hagander) - - - - - - - - Allow amcheck to - check sequences (Mark Dilger) - - - - - - - - Improve amcheck sanity checks for - TOAST tables (Mark Dilger) - - - - - - - - Allow btree_gist - indexes on boolean columns (Emre Hasegeli) - - - - These can be used for exclusion constraints. - - - - - - - - Indicate the permissive/enforcing state in sepgsql log - messages (Dave Page) - - - - - - - - Fix pageinspect's - page_header() to handle 32 kilobyte page sizes - (Quan Zongliang) - - - - Previously improper negative values could be returned in certain - cases. - - - - - - - <link linkend="postgres-fdw"><application>postgres_fdw</application></link> - - - - - - - - Allow postgres_fdw to push down CASE expressions - (Alexander Pyhalov) - - - - - - - - Add server variable - postgres_fdw.application_name to control the - application name of postgres_fdw connections (Hayato Kuroda) - - - - Previously the remote application_name - could only be set on the remote server or via - postgres_fdw connection specification. - postgres_fdw.application_name also supports - escape sequences for customization. - - - - - - - - Allow parallel commit on postgres_fdw - servers (Etsuro Fujita) - - - - This is enabled with the CREATE SERVER option - parallel_commit when using postgres_fdw. - - - - - - - - - - - - - Acknowledgments - - - The following individuals (in alphabetical order) have contributed - to this release as patch authors, committers, reviewers, testers, - or reporters of issues. - - - - - - - - diff --git a/doc/src/sgml/release-16.sgml b/doc/src/sgml/release-16.sgml new file mode 100644 index 00000000000..7f0794cce34 --- /dev/null +++ b/doc/src/sgml/release-16.sgml @@ -0,0 +1,16 @@ + + + + + Release 16 + + + Release date: + 2023-??-?? + + + + This is just a placeholder for now. + + + diff --git a/doc/src/sgml/release.sgml b/doc/src/sgml/release.sgml index 3ea5024956f..1303e86cfa2 100644 --- a/doc/src/sgml/release.sgml +++ b/doc/src/sgml/release.sgml @@ -81,7 +81,7 @@ For new features, add links to the documentation sections. All the active branches have to be edited concurrently when doing that. --> -&release-15; +&release-16; Prior Releases diff --git a/src/tools/git_changelog b/src/tools/git_changelog index 189cfc889d9..ad17b337311 100755 --- a/src/tools/git_changelog +++ b/src/tools/git_changelog @@ -59,7 +59,7 @@ require IPC::Open2; # (We could get this from "git branches", but not worth the trouble.) # NB: master must be first! my @BRANCHES = qw(master - REL_14_STABLE REL_13_STABLE + REL_15_STABLE REL_14_STABLE REL_13_STABLE REL_12_STABLE REL_11_STABLE REL_10_STABLE REL9_6_STABLE REL9_5_STABLE REL9_4_STABLE REL9_3_STABLE REL9_2_STABLE REL9_1_STABLE REL9_0_STABLE REL8_4_STABLE REL8_3_STABLE REL8_2_STABLE REL8_1_STABLE REL8_0_STABLE diff --git a/src/tools/version_stamp.pl b/src/tools/version_stamp.pl index bf8fdfb3ac1..9d4f44d4a95 100755 --- a/src/tools/version_stamp.pl +++ b/src/tools/version_stamp.pl @@ -25,7 +25,7 @@ # Major version is hard-wired into the script. We update it when we branch # a new development version. -my $majorversion = 15; +my $majorversion = 16; # Validate argument and compute derived variables my $minor = shift;