From: Joe Conway Date: Mon, 30 Jun 2025 02:28:10 +0000 (-0400) Subject: Stamp HEAD as 19devel. X-Git-Url: http://git.postgresql.org/gitweb/?a=commitdiff_plain;h=2652835d3ef;p=postgresql.git Stamp HEAD as 19devel. Let the hacking begin ... --- diff --git a/configure b/configure index 3d3d3db97a4..16ef5b58d1a 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 18beta1. +# Generated by GNU Autoconf 2.69 for PostgreSQL 19devel. # # Report bugs to . # @@ -582,8 +582,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='PostgreSQL' PACKAGE_TARNAME='postgresql' -PACKAGE_VERSION='18beta1' -PACKAGE_STRING='PostgreSQL 18beta1' +PACKAGE_VERSION='19devel' +PACKAGE_STRING='PostgreSQL 19devel' PACKAGE_BUGREPORT='pgsql-bugs@lists.postgresql.org' PACKAGE_URL='https://www.postgresql.org/' @@ -1468,7 +1468,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 18beta1 to adapt to many kinds of systems. +\`configure' configures PostgreSQL 19devel to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1533,7 +1533,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of PostgreSQL 18beta1:";; + short | recursive ) echo "Configuration of PostgreSQL 19devel:";; esac cat <<\_ACEOF @@ -1724,7 +1724,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -PostgreSQL configure 18beta1 +PostgreSQL configure 19devel generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2477,7 +2477,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 18beta1, which was +It was created by PostgreSQL $as_me 19devel, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -20063,7 +20063,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 18beta1, which was +This file was extended by PostgreSQL $as_me 19devel, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -20134,7 +20134,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 18beta1 +PostgreSQL config.status 19devel configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index 4b8335dc613..b3efc49c97a 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], [18beta1], [pgsql-bugs@lists.postgresql.org], [], [https://www.postgresql.org/]) +AC_INIT([PostgreSQL], [19devel], [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 fef9584f908..bcde3cfd037 100644 --- a/doc/src/sgml/filelist.sgml +++ b/doc/src/sgml/filelist.sgml @@ -180,7 +180,7 @@ - + diff --git a/doc/src/sgml/release-18.sgml b/doc/src/sgml/release-18.sgml deleted file mode 100644 index 66a6817a2be..00000000000 --- a/doc/src/sgml/release-18.sgml +++ /dev/null @@ -1,4200 +0,0 @@ - - - - - Release 18 - - - Release date: - 2025-??-??, CURRENT AS OF 2025-06-20 - - - - Overview - - - PostgreSQL 18 contains many new features - and enhancements, including: - - - - - - - (to be completed) - - - - - - The above items and other new features of - PostgreSQL 18 are explained in more detail - in the sections below. - - - - - - - Migration to Version 18 - - - 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 18 contains a number of changes that may affect compatibility - with previous releases. Observe the following incompatibilities: - - - - - - - - - Change default to enable data checksums - (Greg Sabino Mullane) - § - - - - Checksums can be disabled with the - new initdb option - . - requires matching cluster checksum settings, so this new option can - be useful to upgrade non-checksum old clusters. - - - - - - - - Change time zone abbreviation handling (Tom Lane) - § - - - - The system will now favor the current session's time - zone abbreviations before checking the server variable - . Previously - timezone_abbreviations was checked first. - - - - - - - - Deprecate MD5 password - authentication (Nathan Bossart) - § - - - - Support for MD5 passwords will be removed in a future major - version release. and now emit deprecation warnings when - setting MD5 passwords. These warnings can be disabled by setting - the parameter to - off. - - - - - - - - Change and - to process the inheritance children of a parent (Michael Harris) - § - - - - The previous behavior can be performed by using the new - ONLY option. - - - - - - - - Prevent COPY FROM - from treating \. as an end-of-file marker when - reading CSV files (Daniel Vérité, Tom Lane) - § - § - - - - will still treat - \. as an end-of-file marker when reading - CSV files from STDIN. - Older psql clients connecting to - PostgreSQL 18 servers might experience \copy - problems. This release also enforces that \. - must appear alone on a line. - - - - - - - - Disallow unlogged partitioned tables (Michael Paquier) - § - - - - Previously ALTER TABLE SET - [UN]LOGGED did nothing, and the creation of an - unlogged partitioned table did not cause its children to be unlogged. - - - - - - - - Execute AFTER triggers as the role that was active when - trigger events were queued (Laurenz Albe) - § - - - - Previously such triggers were run as the role that was active at - trigger execution time (e.g., at ). - This is significant for cases where the role is changed between queue - time and transaction commit. - - - - - - - - Remove non-functional support for rule privileges in / (Fujii Masao) - § - - - - These have been non-functional since - PostgreSQL 8.2. - - - - - - - - Remove column pg_backend_memory_contexts.parent - (Melih Mutlu) - § - - - - This is no longer needed since - pg_backend_memory_contexts.path - was added. - - - - - - - - Change - pg_backend_memory_contexts.level - and pg_log_backend_memory_contexts() - to be one-based (Melih Mutlu, Atsushi Torikoshi, David Rowley, - Fujii Masao) - § - § - § - - - - These were previously zero-based. - - - - - - - - - Changes - - - Below you will find a detailed account of the changes between - PostgreSQL 18 and the previous major - release. - - - - Server - - - Optimizer - - - - - - - - Automatically remove some unnecessary table self-joins (Andrey - Lepikhov, Alexander Kuzmenkov, Alexander Korotkov, Alena Rybakina) - § - - - - This optimization can be disabled using server variable . - - - - - - - - Convert some IN (VALUES - ...) to x = ANY ... for better - optimizer statistics (Alena Rybakina, Andrei Lepikhov) - § - - - - - - - - Allow transforming OR-clauses - to arrays for faster index processing (Alexander Korotkov, Andrey - Lepikhov) - § - - - - - - - - Speed up the processing of INTERSECT, - EXCEPT, window aggregates, and view column aliases (Tom Lane, - David Rowley) - § - § - § - § - - - - - - - - Allow the keys of SELECT - DISTINCT to be internally reordered to avoid sorting - (Richard Guo) - § - - - - This optimization can be disabled using . - - - - - - - - Ignore GROUP BY - columns that are functionally dependent on other columns (Zhang - Mingli, Jian He, David Rowley) - § - - - - If a GROUP BY clause includes all columns of - a unique index, as well as other columns of the same table, those - other columns are redundant and can be dropped from the grouping. - This was already true for non-deferred primary keys. - - - - - - - - Allow some HAVING clauses - on GROUPING - SETS to be pushed to WHERE clauses - (Richard Guo) - § - § - § - § - - - - This allows earlier row filtering. This release also fixes some - GROUPING SETS queries that used to return - incorrect results. - - - - - - - - Improve row estimates for generate_series() - using numeric - and timestamp - values (David Rowley, Song Jinzhou) - § - § - - - - - - - - Allow the optimizer to use Right Semi Join plans - (Richard Guo) - § - - - - Semi-joins are used when needing to find if there is at least - one match. - - - - - - - - Allow merge joins to use incremental sorts - (Richard Guo) - § - - - - - - - - Improve the efficiency of planning queries accessing many partitions - (Ashutosh Bapat, Yuya Watari, David Rowley) - § - § - - - - - - - - Allow partitionwise - joins in more cases, and reduce its memory usage (Richard Guo, - Tom Lane, Ashutosh Bapat) - § - § - - - - - - - - Improve cost estimates of partition queries (Nikita Malakhov, - Andrei Lepikhov) - § - - - - - - - - Improve SQL-language - function plan caching (Alexander Pyhalov, Tom Lane) - § - § - - - - - - - - Improve handling of disabled optimizer features (Robert Haas) - § - - - - - - - - - Indexes - - - - - - - - Allow skip scans of btree indexes - (Peter Geoghegan) - § - § - - - - This allows multi-column btree indexes to be used by queries that - only equality-reference the second or later indexed columns. - - - - - - - - Allow non-btree unique indexes to be used as partition keys and in - materialized views (Mark Dilger) - § - § - - - - The index type must still support equality. - - - - - - - - Allow GIN indexes to - be created in parallel (Tomas Vondra, Matthias van de Meent) - § - - - - - - - - Allow values to be sorted to speed range-type GiST and btree - index builds (Bernd Helmle) - § - - - - - - - - - General Performance - - - - - - - - Add an asynchronous I/O subsystem (Andres Freund, Thomas Munro, - Nazir Bilal Yavuz, Melanie Plageman) - § - § - § - § - § - § - § - § - § - § - § - - - - This feature allows backends to queue multiple read requests, - which allows for more efficient sequential scans, bitmap - heap scans, vacuums, etc. This is enabled by server - variable , with server - variables and added to control it. - This also enables - and - values greater than zero for systems without - fadvise() support. The new system view pg_aios - shows the file handles being used for asynchronous I/O. - - - - - - - - Improve the locking performance of queries that access many relations - (Tomas Vondra) - § - - - - - - - - Improve the performance and reduce memory usage of hash joins and - GROUP BY - (David Rowley, Jeff Davis) - § - § - § - § - § - - - - This also improves hash set operations used by EXCEPT, and hash - lookups of subplan values. - - - - - - - - Allow normal vacuums to freeze some pages, even though they are - all-visible (Melanie Plageman) - § - § - - - - This reduces the overhead of later full-relation - freezing. The aggressiveness of this can be - controlled by server variable and per-table setting . Previously - vacuum never processed all-visible pages until freezing was required. - - - - - - - - Add server variable to control - file truncation during (Nathan Bossart, - Gurjeet Singh) - § - - - - A storage-level parameter with the same name and behavior already - existed. - - - - - - - - Increase server variables 's and 's default values to 16 - (Melanie Plageman) - § - § - - - - This more accurately reflects modern hardware. - - - - - - - - - Monitoring - - - - - - - - Increase the logging granularity of server variable (Melanie Plageman) - § - - - - This server variable was previously only boolean, which is still - supported. - - - - - - - - Add log_connections option to report the duration - of connection stages (Melanie Plageman) - § - - - - - - - - Add escape - %L to output the client IP - address (Greg Sabino Mullane) - § - - - - - - - - Add server variable to log - lock acquisition failures (Yuki Seino, Fujii Masao) - § - § - - - - Specifically it reports SELECT - ... NOWAIT lock failures. - - - - - - - - Modify pg_stat_all_tables - and its variants to report the time spent in , , and their - automatic variants (Sami Imseih) - § - - - - The new columns are total_vacuum_time, - total_autovacuum_time, - total_analyze_time, and - total_autoanalyze_time. - - - - - - - - Add delay time reporting to and (Bertrand Drouvot, Nathan Bossart) - § - § - - - - This information appears in the server log, the system views pg_stat_progress_vacuum - and pg_stat_progress_analyze, - and the output of and when in VERBOSE - mode; tracking must be enabled with the server variable . - - - - - - - - Add WAL, CPU, and average - read statistics output to ANALYZE VERBOSE - (Anthonin Bonnefoy) - § - § - - - - - - - - Add full WAL buffer count to - VACUUM/ANALYZE (VERBOSE) - and autovacuum log output (Bertrand Drouvot) - § - - - - - - - - Add per-backend I/O statistics reporting (Bertrand Drouvot) - § - § - - - - The statistics are accessed via pg_stat_get_backend_io(). - Per-backend I/O statistics can be cleared via pg_stat_reset_backend_stats(). - - - - - - - - Add pg_stat_io - columns to report I/O activity in bytes (Nazir Bilal Yavuz) - § - - - - The new columns are read_bytes, - write_bytes, and - extend_bytes. The - op_bytes column, which always equaled - BLCKSZ, - has been removed. - - - - - - - - Add WAL I/O activity rows to - pg_stat_io (Nazir Bilal Yavuz, Bertrand - Drouvot, Michael Paquier) - § - § - § - - - - This includes WAL receiver activity and a wait - event for such writes. - - - - - - - - - Change server variable - to control tracking WAL timing - in pg_stat_io instead of pg_stat_wal - (Bertrand Drouvot) - § - - - - - - - - Remove read/sync columns from pg_stat_wal - (Bertrand Drouvot) - § - § - - - - This removes columns wal_write, - wal_sync, - wal_write_time, and - wal_sync_time. - - - - - - - - Add function pg_stat_get_backend_wal() - to return per-backend WAL statistics (Bertrand - Drouvot) - § - - - - Per-backend WAL - statistics can be cleared via pg_stat_reset_backend_stats(). - - - - - - - - Add function pg_ls_summariesdir() - to specifically list the contents of PGDATA/pg_wal/summaries - (Yushi Ogiwara) - § - - - - - - - - Add column pg_stat_checkpointer.num_done - to report the number of completed checkpoints (Anton A. Melnikov) - § - - - - Columns num_timed and - num_requested count both completed and - skipped checkpoints. - - - - - - - - Add column - pg_stat_checkpointer.slru_written - to report SLRU buffers written (Nitin Jadhav) - § - - - - Also, modify the checkpoint server log message to report separate - shared buffer and SLRU buffer values. - - - - - - - - Add columns to pg_stat_database - to report parallel worker activity (Benoit Lobréau) - § - - - - The new columns are - parallel_workers_to_launch and - parallel_workers_launched. - - - - - - - - Have query id computation - of arrays consider only the first and last array elements (Dmitry - Dolgov, Sami Imseih) - § - § - - - - Jumbling is used by . - - - - - - - - Adjust query id computations to group together queries using the - same relation name (Michael Paquier, Sami Imseih) - § - - - - This is true even if the tables in different schemas have different - column names. - - - - - - - - Add column pg_backend_memory_contexts.type - to report the type of memory context (David Rowley) - § - - - - - - - - Add column - pg_backend_memory_contexts.path - to show memory context parents (Melih Mutlu) - § - - - - - - - - - Privileges - - - - - - - - Add function pg_get_acl() - to retrieve database access control details (Joel Jacobson) - § - § - - - - - - - - Add function has_largeobject_privilege() - to check large object privileges (Yugo Nagata) - § - - - - - - - - Allow to define - large object default privileges (Takatsuka Haruka, Yugo Nagata, - Laurenz Albe) - § - - - - - - - - Add predefined role pg_signal_autovacuum_worker - (Kirill Reshke) - § - - - - This allows sending signals to autovacuum workers. - - - - - - - - - Server Configuration - - - - - - - - Add support for the OAuth authentication - method (Jacob Champion, Daniel Gustafsson, Thomas Munro) - § - - - - This adds an oauth authentication method to pg_hba.conf, - libpq OAuth options, a server variable to load - token validation libraries, and a configure flag - to add the required compile-time libraries. - - - - - - - - Add server variable to allow - specification of multiple colon-separated TLSv1.3 cipher suites - (Erica Zhang, Daniel Gustafsson) - § - - - - - - - - Change server variable 's default - to include elliptic curve X25519 (Daniel Gustafsson, Jacob Champion) - § - - - - - - - - Rename server variable ssl_ecdh_curve to and allow multiple colon-separated - ECDH curves to be specified (Erica Zhang, - Daniel Gustafsson) - § - - - - The previous name still works. - - - - - - - - Make cancel request - keys 256 bits (Heikki Linnakangas, Jelte Fennema-Nio) - § - § - - - - This is only possible when the server and client support wire - protocol version 3.2, introduced in this release. - - - - - - - - Add server variable - to specify the maximum number of background workers (Nathan Bossart) - § - - - - With this variable set, - can be adjusted at runtime up to this maximum without a server - restart. - - - - - - - - Allow specification of the fixed number of dead tuples that will - trigger an autovacuum (Nathan - Bossart, Frédéric Yhuel) - § - - - - The server variable is . Percentages are - still used for triggering. - - - - - - - - Change server variable - to limit only files opened by a backend (Andres Freund) - § - - - - Previously files opened by the postmaster were also counted toward - this limit. - - - - - - - - Add server variable to - report the required number of semaphores (Nathan Bossart) - § - - - - This is useful for operating system configuration. - - - - - - - - Add server variable to - specify the location of extension control files (Peter Eisentraut, - Matheus Alcantara) - § - § - - - - - - - - - Streaming Replication and Recovery - - - - - - - - Allow inactive replication slots to be automatically invalided using - server variable - (Nisha Moond, Bharath Rupireddy) - § - - - - - - - - Add server variable to control the - maximum active replication origins (Euler Taveira) - § - - - - This was previously controlled by , but this new setting allows - a higher origin count in cases where fewer slots are required. - - - - - - - - - <link linkend="logical-replication">Logical Replication</link> - - - - - - - - Allow the values of generated - columns to be logically replicated (Shubham Khanna, Vignesh C, - Zhijie Hou, Shlok Kyal, Peter Smith) - § - § - § - § - - - - If the publication specifies a column list, all specified - columns, generated and non-generated, are published. - Without a specified column list, publication option - publish_generated_columns controls whether - generated columns are published. Previously generated columns - were not replicated and the subscriber had to compute - the values if possible; this is particularly useful for - non-PostgreSQL subscribers which lack - such a capability. - - - - - - - - Change the default streaming - option from off to parallel - (Vignesh C) - § - - - - - - - - Allow to change the - replication slot's two-phase commit behavior (Hayato Kuroda, Ajin - Cherian, Amit Kapila, Zhijie Hou) - § - § - - - - - - - - Log conflicts while - applying logical replication changes (Zhijie Hou, Nisha Moond) - § - § - § - § - § - - - - Also report in new columns of pg_stat_subscription_stats. - - - - - - - - - - - Utility Commands - - - - - - - - Allow generated - columns to be virtual, and make them the default (Peter - Eisentraut, Jian He, Richard Guo, Dean Rasheed) - § - § - § - - - - Virtual generated columns generate their values when the columns - are read, not written. The write behavior can still be specified - via the STORED option. - - - - - - - - Add OLD/NEW support to RETURNING in - DML queries (Dean Rasheed) - § - - - - Previously RETURNING only returned new values for - and , and old - values for ; - would return the appropriate value for the internal query executed. - This new syntax allows the RETURNING list of - INSERT/UPDATE/DELETE/MERGE - to explicitly return old and new values by using the special aliases - old and new. These aliases - can be renamed to avoid identifier conflicts. - - - - - - - - Allow foreign tables to be created like existing local tables - (Zhang Mingli) - § - - - - The syntax is CREATE - FOREIGN TABLE ... LIKE. - - - - - - - - Allow LIKE - with nondeterministic - collations (Peter Eisentraut) - § - - - - - - - - Allow text position search functions with nondeterministic collations - (Peter Eisentraut) - § - - - - These used to generate an error. - - - - - - - - Add builtin collation provider PG_UNICODE_FAST - (Jeff Davis) - § - - - - This locale supports case mapping, but sorts in code point order, - not natural language order. - - - - - - - - Allow and - to process partitioned tables without processing their children - (Michael Harris) - § - - - - This is enabled with the new ONLY option. This is - useful since autovacuum does not process partitioned tables, just - its children. - - - - - - - - Add functions to modify per-relation and per-column optimizer - statistics (Corey Huinker) - § - § - § - - - - The functions are pg_restore_relation_stats(), - pg_restore_attribute_stats(), - pg_clear_relation_stats(), and - pg_clear_attribute_stats(). - - - - - - - - - Add server variable to control - the file copying method (Nazir Bilal Yavuz) - § - - - - This controls whether CREATE DATABASE - ... STRATEGY=FILE_COPY and ALTER DATABASE ... SET - TABLESPACE uses file copy or clone. - - - - - - - <link linkend="ddl-constraints">Constraints</link> - - - - - - - - Allow the specification of non-overlapping PRIMARY - KEY and UNIQUE - constraints (Paul A. Jungwirth) - § - - - - This is specified by WITHOUT OVERLAPS on the - last specified column. - - - - - - - - Allow CHECK - and foreign - key constraints to be specified as NOT - ENFORCED (Amul Sul) - § - § - - - - This also adds column pg_constraint.conenforced. - - - - - - - - Require primary/foreign key - relationships to use either deterministic collations or the the - same nondeterministic collations (Peter Eisentraut) - § - - - - The restore of a , also used by , will fail if these requirements are not met; - schema changes must be made for these upgrade methods to succeed. - - - - - - - - Store column NOT - NULL specifications in pg_constraint - (Álvaro Herrera, Bernd Helmle) - § - - - - This allows names to be specified for NOT NULL - constraint. This also adds NOT NULL constraints - to foreign tables and NOT NULL inheritance - control to local tables. - - - - - - - - Allow to set the NOT - VALID attribute of NOT NULL constraints - (Rushabh Lathia, Jian He) - § - - - - - - - - Allow modification of the inheritability of NOT - NULL constraints (Suraj Kharage, Álvaro Herrera) - § - § - - - - The syntax is ALTER TABLE - ... ALTER CONSTRAINT ... [NO] INHERIT. - - - - - - - - Allow NOT VALID foreign key constraints on - partitioned tables (Amul Sul) - § - - - - - - - - Allow dropping - of constraints ONLY on partitioned tables - (Álvaro Herrera) - § - - - - This was previously erroneously prohibited. - - - - - - - - <xref linkend="sql-copy"/> - - - - - - - - Add REJECT_LIMIT to control the number of invalid - rows COPY FROM can ignore (Atsushi Torikoshi) - § - - - - This is available when ON_ERROR = 'ignore'. - - - - - - - - Allow COPY TO to copy rows from populated - materialized views (Jian He) - § - - - - - - - - Add COPY LOG_VERBOSITY level - silent to suppress log output of ignored rows - (Atsushi Torikoshi) - § - - - - This new level suppresses output for discarded input rows when - on_error = 'ignore'. - - - - - - - - Disallow COPY FREEZE on foreign tables (Nathan - Bossart) - § - - - - Previously, the COPY worked but the - FREEZE was ignored, so disallow this command. - - - - - - - - <xref linkend="sql-explain"/> - - - - - - - - Automatically include BUFFERS output in - EXPLAIN ANALYZE (Guillaume Lelarge, David Rowley) - § - - - - - - - - Add full WAL buffer count to EXPLAIN - (WAL) output (Bertrand Drouvot) - § - - - - - - - - In EXPLAIN ANALYZE, report the number of index - lookups used per index scan node (Peter Geoghegan) - § - - - - - - - - Modify EXPLAIN to output fractional row counts - (Ibrar Ahmed, Ilia Evdokimov, Robert Haas) - § - § - - - - - - - - Add memory and disk usage details to Material, - Window Aggregate, and common table expression - nodes to EXPLAIN output (David Rowley, Tatsuo - Ishii) - § - § - § - § - - - - - - - - - Add details about window function arguments to - EXPLAIN output (Tom Lane) - § - - - - - - - - Add Parallel Bitmap Heap Scan worker cache - statistics to EXPLAIN ANALYZE (David Geier, - Heikki Linnakangas, Donghang Lin, Alena Rybakina, David Rowley) - § - - - - - - - - Indicate disabled nodes in EXPLAIN ANALYZE output - (Robert Haas, David Rowley, Laurenz Albe) - § - § - § - - - - - - - - - - - Data Types - - - - - - - - Improve Unicode - full case mapping and conversion (Jeff Davis) - § - § - - - - This adds the ability to do conditional and title case mapping, - and case map single characters to multiple characters. - - - - - - - - Allow jsonb - null values to be cast to scalar types as - NULL (Tom Lane) - § - - - - Previously such casts generated an error. - - - - - - - - Add optional parameter to json{b}_strip_nulls - to allow removal of null array elements (Florents Tselai) - § - - - - - - - - Add function array_sort() - which sorts an array's first dimension (Junwang Zhao, Jian He) - § - - - - - - - - Add function array_reverse() - which reverses an array's first dimension (Aleksander Alekseev) - § - - - - - - - - Add function reverse() - to reverse bytea bytes (Aleksander Alekseev) - § - - - - - - - - Allow casting between integer types and bytea (Aleksander - Alekseev) - § - - - - The integer values are stored as bytea two's complement - values. - - - - - - - - Update Unicode data to Unicode 16.0.0 (Peter - Eisentraut) - § - - - - - - - - Add full text search stemming for Estonian - (Tom Lane) - § - - - - - - - - Improve the XML - error codes to more closely match the SQL standard - (Tom Lane) - § - - - - These errors are reported via SQLSTATE. - - - - - - - - - Functions - - - - - - - - Add function casefold() - to allow for more sophisticated case-insensitive matching (Jeff Davis) - § - - - - This allows more accurate comparisons, i.e., a character can have - multiple upper or lower case equivalents, or upper or lower case - conversion changes the number of characters. - - - - - - - - Allow MIN()/MAX() - aggregates on arrays and composite types (Aleksander Alekseev, - Marat Buharov) - § - § - - - - - - - - Add a WEEK option to EXTRACT() - (Tom Lane) - § - - - - - - - - Improve the output EXTRACT(QUARTER ...) for - negative values (Tom Lane) - § - - - - - - - - Add roman numeral support to to_number() - (Hunaid Sohail) - § - - - - This is accessed via the RN pattern. - - - - - - - - Add UUID - version 7 generation function uuidv7() - (Andrey Borodin) - § - - - - This UUID value is - temporally sortable. Function alias uuidv4() - has been added to explicitly generate version 4 UUIDs. - - - - - - - - Add functions crc32() - and crc32c() - to compute CRC values (Aleksander Alekseev) - § - - - - - - - - Add math functions gamma() - and lgamma() - (Dean Rasheed) - § - - - - - - - - Allow => syntax for named cursor arguments in - PL/pgSQL (Pavel Stehule) - § - - - - We previously only accepted :=. - - - - - - - - Allow regexp_match[es]()/regexp_like()/regexp_replace()/regexp_count()/regexp_instr()/regexp_substr()/regexp_split_to_table()/regexp_split_to_array() - to use named arguments (Jian He) - § - - - - - - - - - <xref linkend="libpq"/> - - - - - - - - Add function PQfullProtocolVersion() - to report the full, including minor, protocol version number (Jacob - Champion, Jelte Fennema-Nio) - § - - - - - - - - Add libpq connection parameters - and environment variables to - specify the minimum and maximum acceptable protocol version for - connections (Jelte Fennema-Nio) - § - § - - - - - - - - Add libpq function PQservice() - to return the connection service name (Michael Banck) - § - - - - - - - - Report changes to the client - (Alexander Kukushkin, Jelte Fennema-Nio, Tomas Vondra) - § - § - - - - - - - - Add PQtrace() output - for all message types, including authentication (Jelte Fennema-Nio) - § - § - § - § - § - - - - - - - - Add libpq connection parameter sslkeylogfile - which dumps out SSL key material (Abhishek Chanda, - Daniel Gustafsson) - § - - - - This is useful for debugging. - - - - - - - - Modify some libpq function signatures to use - int64_t (Thomas Munro) - § - - - - These previously used pg_int64, which is now - deprecated. - - - - - - - - - <xref linkend="app-psql"/> - - - - - - - - Allow psql to parse, bind, and close - named prepared statements (Anthonin Bonnefoy, Michael Paquier) - § - - - - This is accomplished with new commands \parse, - \bind_named, - and \close_prepared. - - - - - - - - Add psql backslash commands to allowing - issuance of pipeline queries (Anthonin Bonnefoy) - § - § - § - - - - The new commands are \startpipeline, - \syncpipeline, \sendpipeline, - \endpipeline, \flushrequest, - \flush, and \getresults. - - - - - - - - Allow adding pipeline status to the psql - prompt and add related state variables (Anthonin Bonnefoy) - § - - - - The new prompt character is %P and - the new psql variables are PIPELINE_SYNC_COUNT, - PIPELINE_COMMAND_COUNT, - and PIPELINE_RESULT_COUNT. - - - - - - - - Allow adding the connection service name to the - psql prompt or access it via - psql variable (Michael Banck) - § - - - - - - - - Add psql option to use expanded mode on - all list commands (Dean Rasheed) - § - - - - Adding backslash suffix x enables this. - - - - - - - - Change psql's to use tabular format - and include more information (Álvaro Herrera, Maiquel Grassi, - Hunaid Sohail) - § - - - - - - - - Add function's leakproof indicator - to psql's \df+, - \do+, \dAo+, and - \dC+ outputs (Yugo Nagata) - § - - - - - - - - Add access method details for partitioned relations in \dP+ - (Justin Pryzby) - § - - - - - - - - Add default_version - to the psql \dx - extension output (Magnus Hagander) - § - - - - - - - - Add psql variable to set the default \watch - wait time (Daniel Gustafsson) - § - - - - - - - - - Server Applications - - - - - - - - Change to default to enabling checksums - (Greg Sabino Mullane) - § - § - - - - The new initdb option - disables checksums. - - - - - - - - Add initdb option - to avoid syncing heap/index - files (Nathan Bossart) - § - - - - initdb option - is still available to avoid syncing any files. - - - - - - - - Add option - to compute only missing - optimizer statistics (Corey Huinker, Nathan Bossart) - § - § - - - - This option can only be used by - and . - - - - - - - - Add option - / to enable hard linking - (Israel Barth Rubio, Robert Haas) - § - - - - Only some files can be hard linked. This should not be used if the - backups will be used independently. - - - - - - - - Allow to verify tar-format - backups (Amul Sul) - § - - - - - - - - If 's - specifies a database name, use it in - output (Masahiko Sawada) - § - - - - - - - - Add option - to change the default - char signedness (Masahiko Sawada) - § - - - - - - - - <link - linkend="app-pgdump"><application>pg_dump</application></link>/<link - linkend="app-pg-dumpall"><application>pg_dumpall</application></link>/<link - linkend="app-pgrestore"><application>pg_restore</application></link> - - - - - - - - Allow to dump in the same output - formats as pg_dump supports (Mahendra - Singh Thalor, Andrew Dunstan) - § - - - - Also modify to handle such dumps. - Previously pg_dumpall only supported - text format. - - - - - - - - Add options - , , - and (Jeff Davis) - § - - - - - - - - Add pg_dump and option to - dump sequence data that would normally be excluded (Nathan Bossart) - § - § - - - - - - - - Add , , - and options - , , - , and - (Corey Huinker, Jeff Davis) - § - - - - - - - - Add option to disable row level - security policy processing in , - , - (Nikolay Samokhvalov) - § - - - - This is useful for migrating to systems with different policies. - - - - - - - - - <xref linkend="pgupgrade"/> - - - - - - - - Allow pg_upgrade to preserve optimizer - statistics (Corey Huinker, Jeff Davis, Nathan Bossart) - § - § - § - § - - - - Extended statistics are not preserved. Also add - pg_upgrade option - to disable statistics preservation. - - - - - - - - Allow pg_upgrade to process database - checks in parallel (Nathan Bossart) - § - § - § - § - § - § - § - § - § - § - § - - - - This is controlled by the existing option. - - - - - - - - Add pg_upgrade option - to swap directories rather than copy, clone, - or link files (Nathan Bossart) - § - - - - This mode is potentially the fastest. - - - - - - - - Add pg_upgrade option - to set the default - char signedness of new cluster (Masahiko Sawada) - § - § - - - - This is to handle cases where a - pre-PostgreSQL 18 cluster's default - CPU signedness does not match the new cluster. - - - - - - - - - Logical Replication Applications - - - - - - - - Add option - to create logical replicas for all databases - (Shubham Khanna) - § - - - - - - - - Add pg_createsubscriber option - to remove publications (Shubham Khanna) - § - - - - - - - - Add pg_createsubscriber option - to enable prepared transactions - (Shubham Khanna) - § - - - - - - - - Add option - to specify failover slots (Hayato Kuroda) - § - - - - - - - - Allow pg_recvlogical - to work without - (Hayato Kuroda) - § - - - - - - - - - - - Source Code - - - - - - - - Separate the loading and running of injection points - (Michael Paquier, Heikki Linnakangas) - § - § - - - - Injection points can now be created, but not run, via INJECTION_POINT_LOAD(), - and such injection points can be run via INJECTION_POINT_CACHED(). - - - - - - - - Support runtime arguments in injection points (Michael Paquier) - § - - - - - - - - Allow inline injection point test code with IS_INJECTION_POINT_ATTACHED() - (Heikki Linnakangas) - § - - - - - - - - Improve the performance of processing long JSON strings using - SIMD (Single Instruction Multiple Data) (David - Rowley) - § - - - - - - - - Speed up CRC32C calculations using x86 AVX-512 - instructions (Raghuveer Devulapalli, Paul Amonson) - § - - - - - - - - Add ARM Neon and SVE CPU - intrinsics for popcount (integer bit counting) (Chiranmoy - Bhattacharya, Devanga Susmitha, Rama Malladi) - § - § - - - - - - - - Improve the speed of numeric multiplication and division (Joel - Jacobson, Dean Rasheed) - § - § - § - § - - - - - - - - Add configure option - to enable NUMA awareness (Jakub Wartak, Bertrand - Drouvot) - § - § - § - - - - The function pg_numa_available() - reports on NUMA awareness, and system views pg_shmem_allocations_numa - and pg_buffercache_numa - which report on shared memory distribution across - NUMA nodes. - - - - - - - - Add TOAST table to pg_index - to allow for very large expression indexes (Nathan Bossart) - § - - - - - - - - Remove column pg_attribute.attcacheoff - (David Rowley) - § - - - - - - - - Add column pg_class.relallfrozen - (Melanie Plageman) - § - - - - - - - - Add amgettreeheight, - amconsistentequality, and - amconsistentordering to the index access method - API (Mark Dilger) - § - § - - - - - - - - Add GiST support function stratnum() - (Paul A. Jungwirth) - § - - - - - - - - Record the default CPU signedness of - char in - (Masahiko Sawada) - § - - - - - - - - Add support for Python "Limited API" in (Peter Eisentraut) - § - § - - - - This helps prevent problems caused by - Python 3.x version mismatches. - - - - - - - - Change the minimum supported Python - version to 3.6.8 (Jacob Champion) - § - - - - - - - - Remove support for OpenSSL versions older - than 1.1.1 (Daniel Gustafsson) - § - § - - - - - - - - If LLVM is enabled, require version 14 - or later (Thomas Munro) - § - - - - - - - - Add macro PG_MODULE_MAGIC_EXT - to allow extensions to report their name and version (Andrei Lepikhov) - § - - - - This information can be access via the new function pg_get_loaded_modules(). - - - - - - - - Document that SPI_connect()/SPI_connect_ext() - always returns success (SPI_OK_CONNECT) (Stepan - Neretin) - § - - - - Errors are always reported via ereport(). - - - - - - - - Add documentation - section about API and ABI - compatibility (David Wheeler, Peter Eisentraut) - § - - - - - - - - Remove the experimental designation of - Meson builds on Windows (Aleksander Alekseev) - § - - - - - - - - Remove configure options and - (Thomas Munro) - § - § - - - - Thirty-two-bit atomic operations are now required. - - - - - - - - Remove support for the - HPPA/PA-RISC architecture - (Tom Lane) - § - - - - - - - - - Additional Modules - - - - - - - - Add extension to inspect logical - snapshots (Bertrand Drouvot) - § - - - - - - - - Add extension which adds debug details - to EXPLAIN - output (Robert Haas) - § - - - - - - - - Add output columns to postgres_fdw_get_connections() - (Hayato Kuroda, Sagar Dilip Shedge) - § - § - § - § - - - - New output column used_in_xact indicates - if the foreign data wrapper is being used by a current transaction, - closed indicates if it is closed, - user_name indicates the user name, and - remote_backend_pid indicates the remote - backend process identifier. - - - - - - - - Allow SCRAM - authentication from the client to be passed to servers (Matheus Alcantara, Peter Eisentraut) - § - - - - This avoids storing postgres_fdw - authentication information in the database, and is - enabled with the postgres_fdw use_scram_passthrough - connection option. libpq uses new connection parameters - and . - - - - - - - - Allow SCRAM authentication from the client to be - passed to servers (Matheus Alcantara) - § - - - - - - - - Add on_error and log_verbosity - options to (Atsushi Torikoshi) - § - - - - These control how file_fdw handles and - reports invalid file rows. - - - - - - - - Add reject_limit to control the number of - invalid rows file_fdw can ignore (Atsushi - Torikoshi) - § - - - - This is active when ON_ERROR = 'ignore'. - - - - - - - - Add configurable variable min_password_length to - (Emanuele Musella, Maurizio Boriani) - § - - - - This controls the minimum password length. - - - - - - - - Have report the number of failed, retried, - or skipped transactions in per-script reports (Yugo Nagata) - § - - - - - - - - Add server variable weak - to control invalid check digit acceptance (Viktor Holmberg) - § - - - - This was previously only controlled by function isn_weak(). - - - - - - - - Allow values to be sorted to speed - index builds (Bernd Helmle, Andrey Borodin) - § - - - - - - - - Add check function gin_index_check() - to verify GIN indexes (Grigory Kryachko, Heikki - Linnakangas, Andrey Borodin) - § - - - - - - - - Add functions pg_buffercache_evict_relation() - and pg_buffercache_evict_all() - to evict unpinned shared buffers (Nazir Bilal Yavuz) - § - - - - The existing function pg_buffercache_evict() - now returns the buffer flush status. - - - - - - - - Allow extensions to install custom - options (Robert Haas, Sami Imseih) - § - § - § - - - - - - - - Allow extensions to use the server's cumulative statistics - API (Michael Paquier) - § - § - - - - - - - <xref linkend="pgstatstatements"/> - - - - - - - - Allow the queries of - and to be tracked by - pg_stat_statements (Anthonin Bonnefoy) - § - - - - They are also now assigned query ids. - - - - - - - - Allow the parameterization of values in - pg_stat_statements (Greg Sabino Mullane, - Michael Paquier) - § - - - - This reduces the bloat caused by SET statements - with differing constants. - - - - - - - - Add pg_stat_statements - columns to report parallel activity (Guillaume Lelarge) - § - - - - The new columns are - parallel_workers_to_launch and - parallel_workers_launched. - - - - - - - - Add - pg_stat_statements.wal_buffers_full - to report full WAL buffers (Bertrand Drouvot) - § - - - - - - - - - <xref linkend="pgcrypto"/> - - - - - - - - Add pgcrypto algorithms sha256crypt - and sha512crypt - (Bernd Helmle) - § - - - - - - - - Add CFB mode - to pgcrypto encryption and decryption - (Umar Hayat) - § - - - - - - - - Add function fips_mode() - to report the server's FIPS mode (Daniel - Gustafsson) - § - - - - - - - - Add pgcrypto server variable builtin_crypto_enabled - to allow disabling builtin non-FIPS mode - cryptographic functions (Daniel Gustafsson, Joe Conway) - § - - - - This is useful for guaranteeing FIPS mode behavior. - - - - - - - - - - - - Acknowledgments - - - The following individuals (in alphabetical order) have contributed - to this release as patch authors, committers, reviewers, testers, - or reporters of issues. - - - - (to be completed) - - - - diff --git a/doc/src/sgml/release-19.sgml b/doc/src/sgml/release-19.sgml new file mode 100644 index 00000000000..8d242b5b281 --- /dev/null +++ b/doc/src/sgml/release-19.sgml @@ -0,0 +1,16 @@ + + + + + Release 19 + + + Release date: + 2026-??-?? + + + + This is just a placeholder for now. + + + diff --git a/doc/src/sgml/release.sgml b/doc/src/sgml/release.sgml index cee577ff8d3..a659d382db9 100644 --- a/doc/src/sgml/release.sgml +++ b/doc/src/sgml/release.sgml @@ -70,7 +70,7 @@ For new features, add links to the documentation sections. All the active branches have to be edited concurrently when doing that. --> -&release-18; +&release-19; Prior Releases diff --git a/meson.build b/meson.build index 6ffe7b47275..36e168a1a2a 100644 --- a/meson.build +++ b/meson.build @@ -8,7 +8,7 @@ project('postgresql', ['c'], - version: '18beta1', + version: '19devel', license: 'PostgreSQL', # We want < 0.56 for python 3.5 compatibility on old platforms. EPEL for diff --git a/src/tools/git_changelog b/src/tools/git_changelog index b8bd874f208..dccf938685a 100755 --- a/src/tools/git_changelog +++ b/src/tools/git_changelog @@ -59,6 +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_18_STABLE REL_17_STABLE REL_16_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 diff --git a/src/tools/version_stamp.pl b/src/tools/version_stamp.pl index c3509474d83..a9d2d0910f3 100755 --- a/src/tools/version_stamp.pl +++ b/src/tools/version_stamp.pl @@ -25,7 +25,7 @@ use warnings FATAL => 'all'; # Major version is hard-wired into the script. We update it when we branch # a new development version. -my $majorversion = 18; +my $majorversion = 19; # Validate argument and compute derived variables my $minor = shift;