Skip to content

[pull] master from postgres:master #976

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Jun 19, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions doc/src/sgml/config.sgml
Original file line number Diff line number Diff line change
Expand Up @@ -2363,7 +2363,7 @@ include_dir 'conf.d'
</listitem>
</varlistentry>

<varlistentry id="guc_file_copy_method" xreflabel="file_copy_method">
<varlistentry id="guc-file-copy-method" xreflabel="file_copy_method">
<term><varname>file_copy_method</varname> (<type>enum</type>)
<indexterm>
<primary><varname>file_copy_method</varname> configuration parameter</primary>
Expand Down Expand Up @@ -2894,7 +2894,8 @@ include_dir 'conf.d'
Sets the maximum number of parallel workers that can be
started by a single utility command. Currently, the parallel
utility commands that support the use of parallel workers are
<command>CREATE INDEX</command> when building a B-tree or BRIN index,
<command>CREATE INDEX</command> when building a B-tree,
GIN, or BRIN index,
and <command>VACUUM</command> without <literal>FULL</literal>
option. Parallel workers are taken from the pool of processes
established by <xref linkend="guc-max-worker-processes"/>, limited
Expand Down Expand Up @@ -5765,7 +5766,7 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
</listitem>
</varlistentry>

<varlistentry id="guc-enable_self_join_elimination" xreflabel="enable_self_join_elimination">
<varlistentry id="guc-enable-self-join-elimination" xreflabel="enable_self_join_elimination">
<term><varname>enable_self_join_elimination</varname> (<type>boolean</type>)
<indexterm>
<primary><varname>enable_self_join_elimination</varname> configuration parameter</primary>
Expand Down
2 changes: 1 addition & 1 deletion doc/src/sgml/ref/alter_database.sgml
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ ALTER DATABASE <replaceable class="parameter">name</replaceable> RESET ALL
must be empty for this database, and no one can be connected to
the database. Tables and indexes in non-default tablespaces are
unaffected. The method used to copy files to the new tablespace
is affected by the <xref linkend="guc_file_copy_method"/> setting.
is affected by the <xref linkend="guc-file-copy-method"/> setting.
</para>

<para>
Expand Down
2 changes: 1 addition & 1 deletion doc/src/sgml/ref/create_database.sgml
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ CREATE DATABASE <replaceable class="parameter">name</replaceable>
after the creation of the new database. In some situations, this may
have a noticeable negative impact on overall system performance. The
<literal>FILE_COPY</literal> strategy is affected by the <xref
linkend="guc_file_copy_method"/> setting.
linkend="guc-file-copy-method"/> setting.
</para>
</listitem>
</varlistentry>
Expand Down
2 changes: 1 addition & 1 deletion doc/src/sgml/ref/create_foreign_table.sgml
Original file line number Diff line number Diff line change
Expand Up @@ -232,7 +232,7 @@ WITH ( MODULUS <replaceable class="parameter">numeric_literal</replaceable>, REM
<term><literal>INCLUDING COMMENTS</literal></term>
<listitem>
<para>
Comments for the copied columns, constraints, and indexes will be
Comments for the copied columns and constraints will be
copied. The default behavior is to exclude comments, resulting in
the copied columns and constraints in the new table having no
comments.
Expand Down
2 changes: 1 addition & 1 deletion doc/src/sgml/ref/create_index.sgml
Original file line number Diff line number Diff line change
Expand Up @@ -814,7 +814,7 @@ Indexes:
leveraging multiple CPUs in order to process the table rows faster.
This feature is known as <firstterm>parallel index
build</firstterm>. For index methods that support building indexes
in parallel (currently, B-tree and BRIN),
in parallel (currently, B-tree, GIN, and BRIN),
<varname>maintenance_work_mem</varname> specifies the maximum
amount of memory that can be used by each index build operation as
a whole, regardless of how many worker processes were started.
Expand Down
58 changes: 29 additions & 29 deletions doc/src/sgml/release-18.sgml
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ Change time zone abbreviation handling (Tom Lane)
</para>

<para>
The system will now favor the current session's time zone abbreviations before checking the server variable <varname>timezone_abbreviations</varname>. Previously <varname>timezone_abbreviations</varname> was
The system will now favor the current session's time zone abbreviations before checking the server variable <xref linkend="guc-timezone-abbreviations"/>. Previously <varname>timezone_abbreviations</varname> was
checked first.
</para>
</listitem>
Expand All @@ -101,7 +101,7 @@ Deprecate MD5 password authentication (Nathan Bossart)

<para>
Support for MD5 passwords will be removed in a future major version release. <command>CREATE ROLE</command> and <command>ALTER ROLE</command> now emit deprecation warnings when setting MD5 passwords.
These warnings can be disabled by setting the <varname>md5_password_warnings</varname> parameter to <literal>off</literal>.
These warnings can be disabled by setting the <xref linkend="guc-md5-password-warnings"/> parameter to <literal>off</literal>.
</para>
</listitem>

Expand Down Expand Up @@ -263,7 +263,7 @@ Automatically remove some unnecessary table self-joins (Andrey Lepikhov, Alexand
</para>

<para>
This optimization can be disabled using server variable <varname>enable_self_join_elimination</varname>.
This optimization can be disabled using server variable <xref linkend="guc-enable-self-join-elimination"/>.
</para>
</listitem>

Expand Down Expand Up @@ -324,7 +324,7 @@ Allow the keys of <command>SELECT DISTINCT</command> to be internally reordered
</para>

<para>
This optimization can be disabled using <varname>enable_distinct_reordering</varname>.
This optimization can be disabled using <xref linkend="guc-enable-distinct-reordering"/>.
</para>
</listitem>

Expand Down Expand Up @@ -606,8 +606,8 @@ Add an asynchronous I/O subsystem (Andres Freund, Thomas Munro, Nazir Bilal Yavu

<para>
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 <varname>io_method</varname>, with server variables <varname>io_combine_limit</varname> and <varname>io_max_combine_limit</varname> added to control it. This also enables
<varname>effective_io_concurrency</varname> and <varname>maintenance_io_concurrency</varname> values greater than zero for systems without <function>fadvise()</function> support. The new system view <structname>pg_aios</structname> shows the file handles being used
This is enabled by server variable <xref linkend="guc-io-method"/>, with server variables <xref linkend="guc-io-combine-limit"/> and <xref linkend="guc-io-max-combine-limit"/> added to control it. This also enables
<xref linkend="guc-effective-io-concurrency"/> and <xref linkend="guc-maintenance-io-concurrency"/> values greater than zero for systems without <function>fadvise()</function> support. The new system view <structname>pg_aios</structname> shows the file handles being used
for asynchronous I/O.
</para>
</listitem>
Expand Down Expand Up @@ -667,7 +667,7 @@ Allow normal vacuums to freeze some pages, even though they are all-visible (Mel
</para>

<para>
This reduces the overhead of later full-relation freezing. The aggressiveness of this can be controlled by server variable and per-table setting <varname>vacuum_max_eager_freeze_failure_rate</varname>.
This reduces the overhead of later full-relation freezing. The aggressiveness of this can be controlled by server variable and per-table setting <xref linkend="guc-vacuum-max-eager-freeze-failure-rate"/>.
Previously vacuum never processed all-visible pages until freezing was required.
</para>
</listitem>
Expand All @@ -679,7 +679,7 @@ Author: Nathan Bossart <[email protected]>

<listitem>
<para>
Add server variable <varname>vacuum_truncate</varname> to control file truncation during <command>VACUUM</command> (Nathan Bossart, Gurjeet Singh)
Add server variable <xref linkend="guc-vacuum-truncate"/> to control file truncation during <command>VACUUM</command> (Nathan Bossart, Gurjeet Singh)
<ulink url="&commit_baseurl;0164a0f9e">&sect;</ulink>
</para>

Expand All @@ -697,7 +697,7 @@ Author: Melanie Plageman <[email protected]>

<listitem>
<para>
Increase server variables <varname>effective_io_concurrency</varname>'s and <varname>maintenance_io_concurrency</varname>'s default values to 16 (Melanie Plageman)
Increase server variables <xref linkend="guc-effective-io-concurrency"/>'s and <xref linkend="guc-maintenance-io-concurrency"/>'s default values to 16 (Melanie Plageman)
<ulink url="&commit_baseurl;ff79b5b2a">&sect;</ulink>
<ulink url="&commit_baseurl;cc6be07eb">&sect;</ulink>
</para>
Expand All @@ -723,7 +723,7 @@ Author: Melanie Plageman <[email protected]>

<listitem>
<para>
Increase the logging granularity of server variable <varname>log_connections</varname> (Melanie Plageman)
Increase the logging granularity of server variable <xref linkend="guc-log-connections"/> (Melanie Plageman)
<ulink url="&commit_baseurl;9219093ca">&sect;</ulink>
</para>

Expand Down Expand Up @@ -751,7 +751,7 @@ Author: Tom Lane <[email protected]>

<listitem>
<para>
Add <varname>log_line_prefix</varname> escape <literal>%L</literal> to output the client <acronym>IP</acronym> address (Greg Sabino Mullane)
Add <xref linkend="guc-log-line-prefix"/> escape <literal>%L</literal> to output the client <acronym>IP</acronym> address (Greg Sabino Mullane)
<ulink url="&commit_baseurl;3516ea768">&sect;</ulink>
</para>
</listitem>
Expand All @@ -763,7 +763,7 @@ Author: Fujii Masao <[email protected]>

<listitem>
<para>
Add server variable <varname>log_lock_failures</varname> to log lock acquisition failures (Yuki Seino)
Add server variable <xref linkend="guc-log-lock-failures"/> to log lock acquisition failures (Yuki Seino)
<ulink url="&commit_baseurl;6d376c3b0">&sect;</ulink>
</para>

Expand Down Expand Up @@ -804,7 +804,7 @@ Add delay time reporting to <command>VACUUM</command> and <command>ANALYZE</comm

<para>
This information appears in the autovacuum logs, the system views <structname>pg_stat_progress_vacuum</structname> and <structname>pg_stat_progress_analyze</structname>, and the output of <command>VACUUM</command> and <command>ANALYZE</command> when in <literal>VERBOSE</literal>
mode; tracking must be enabled with the server variable <varname>track_cost_delay_timing</varname>.
mode; tracking must be enabled with the server variable <xref linkend="guc-track-cost-delay-timing"/>.
</para>
</listitem>

Expand Down Expand Up @@ -900,7 +900,7 @@ Author: Michael Paquier <[email protected]>

<listitem>
<para>
Change server variable <varname>track_wal_io_timing</varname> to control tracking <acronym>WAL</acronym> timing in <structname>pg_stat_io</structname> instead of <structname>pg_stat_wal</structname> (Bertrand Drouvot)
Change server variable <xref linkend="guc-track-wal-io-timing"/> to control tracking <acronym>WAL</acronym> timing in <structname>pg_stat_io</structname> instead of <structname>pg_stat_wal</structname> (Bertrand Drouvot)
<ulink url="&commit_baseurl;6c349d83b">&sect;</ulink>
</para>
</listitem>
Expand Down Expand Up @@ -1144,7 +1144,7 @@ Add support for the OAuth authentication method (Jacob Champion, Daniel Gustafss
</para>

<para>
This adds an <literal>oauth</literal> authentication method to <filename>pg_hba.conf</filename>, libpq OAuth options, a server variable <varname>oauth_validator_libraries</varname> to load token validation libraries, and
This adds an <literal>oauth</literal> authentication method to <filename>pg_hba.conf</filename>, libpq OAuth options, a server variable <xref linkend="guc-oauth-validator-libraries"/> to load token validation libraries, and
a configure flag <option>--with-libcurl</option> to add the required compile-time libraries.
</para>
</listitem>
Expand All @@ -1156,7 +1156,7 @@ Author: Daniel Gustafsson <[email protected]>

<listitem>
<para>
Add server variable <varname>ssl_tls13_ciphers</varname> to allow specification of multiple colon-separated TLSv1.3 cipher suites (Erica Zhang, Daniel Gustafsson)
Add server variable <xref linkend="guc-ssl-tls13-ciphers"/> to allow specification of multiple colon-separated TLSv1.3 cipher suites (Erica Zhang, Daniel Gustafsson)
<ulink url="&commit_baseurl;45188c2ea">&sect;</ulink>
</para>
</listitem>
Expand All @@ -1168,7 +1168,7 @@ Author: Daniel Gustafsson <[email protected]>

<listitem>
<para>
Change server variable <varname>ssl_groups</varname>'s default to include elliptic curve X25519 (Daniel Gustafsson, Jacob Champion)
Change server variable <xref linkend="guc-ssl-groups"/>'s default to include elliptic curve X25519 (Daniel Gustafsson, Jacob Champion)
<ulink url="&commit_baseurl;daa02c6bd">&sect;</ulink>
</para>
</listitem>
Expand All @@ -1180,7 +1180,7 @@ Author: Daniel Gustafsson <[email protected]>

<listitem>
<para>
Rename server variable <varname>ssl_ecdh_curve</varname> to <varname>ssl_groups</varname> and allow multiple colon-separated <acronym>ECDH</acronym> curves to be specified (Erica Zhang, Daniel Gustafsson)
Rename server variable <varname>ssl_ecdh_curve</varname> to <xref linkend="guc-ssl-groups"/> and allow multiple colon-separated <acronym>ECDH</acronym> curves to be specified (Erica Zhang, Daniel Gustafsson)
<ulink url="&commit_baseurl;3d1ef3a15">&sect;</ulink>
</para>

Expand Down Expand Up @@ -1226,12 +1226,12 @@ Author: Nathan Bossart <[email protected]>

<listitem>
<para>
Add server variable <varname>autovacuum_worker_slots</varname> to specify the maximum number of background workers (Nathan Bossart)
Add server variable <xref linkend="guc-autovacuum-worker-slots"/> to specify the maximum number of background workers (Nathan Bossart)
<ulink url="&commit_baseurl;c758119e5">&sect;</ulink>
</para>

<para>
With this variable set, <varname>autovacuum_max_workers</varname> can be adjusted at runtime up to this maximum without a server restart.
With this variable set, <xref linkend="guc-autovacuum-max-workers"/> can be adjusted at runtime up to this maximum without a server restart.
</para>
</listitem>

Expand All @@ -1247,7 +1247,7 @@ Allow specification of the fixed number of dead tuples that will trigger an auto
</para>

<para>
The server variable is <varname>autovacuum_vacuum_max_threshold</varname>. Percentages are still used for triggering.
The server variable is <xref linkend="guc-autovacuum-vacuum-max-threshold"/>. Percentages are still used for triggering.
</para>
</listitem>

Expand All @@ -1258,7 +1258,7 @@ Author: Andres Freund <[email protected]>

<listitem>
<para>
Change server variable <varname>max_files_per_process</varname> to limit only files opened by a backend (Andres Freund)
Change server variable <xref linkend="guc-max-files-per-process"/> to limit only files opened by a backend (Andres Freund)
<ulink url="&commit_baseurl;adb5f85fa">&sect;</ulink>
</para>

Expand All @@ -1274,7 +1274,7 @@ Author: Nathan Bossart <[email protected]>

<listitem>
<para>
Add server variable <varname>num_os_semaphores</varname> to report the required number of semaphores (Nathan Bossart)
Add server variable <xref linkend="guc-num-os-semaphores"/> to report the required number of semaphores (Nathan Bossart)
<ulink url="&commit_baseurl;0dcaea569">&sect;</ulink>
</para>

Expand All @@ -1292,7 +1292,7 @@ Author: Peter Eisentraut <[email protected]>

<listitem>
<para>
Add server variable <varname>extension_control_path</varname> to specify the location of extension control files (Peter Eisentraut, Matheus Alcantara)
Add server variable <xref linkend="guc-extension-control-path"/> to specify the location of extension control files (Peter Eisentraut, Matheus Alcantara)
<ulink url="&commit_baseurl;4f7f7b037">&sect;</ulink>
<ulink url="&commit_baseurl;81eaaa2c4">&sect;</ulink>
</para>
Expand All @@ -1314,7 +1314,7 @@ Author: Amit Kapila <[email protected]>

<listitem>
<para>
Allow inactive replication slots to be automatically invalided using server variable <varname>idle_replication_slot_timeout</varname> (Nisha Moond, Bharath Rupireddy)
Allow inactive replication slots to be automatically invalided using server variable <xref linkend="guc-idle-replication-slot-timeout"/> (Nisha Moond, Bharath Rupireddy)
<ulink url="&commit_baseurl;ac0e33136">&sect;</ulink>
</para>
</listitem>
Expand All @@ -1326,12 +1326,12 @@ Author: Masahiko Sawada <[email protected]>

<listitem>
<para>
Add server variable <varname>max_active_replication_origins</varname> to control the maximum active replication origins (Euler Taveira)
Add server variable <xref linkend="guc-max-active-replication-origins"/> to control the maximum active replication origins (Euler Taveira)
<ulink url="&commit_baseurl;04ff636cb">&sect;</ulink>
</para>

<para>
This was previously controlled by <varname>max_replication_slots</varname>, but this new setting allows a higher origin count in cases where fewer slots are required.
This was previously controlled by <xref linkend="guc-max-replication-slots"/>, but this new setting allows a higher origin count in cases where fewer slots are required.
</para>
</listitem>

Expand Down Expand Up @@ -1583,7 +1583,7 @@ Author: Thomas Munro <[email protected]>

<listitem>
<para>
Add server variable <varname>file_copy_method</varname> to control the file copying method (Nazir Bilal Yavuz)
Add server variable <xref linkend="guc-file-copy-method"/> to control the file copying method (Nazir Bilal Yavuz)
<ulink url="&commit_baseurl;f78ca6f3e">&sect;</ulink>
</para>

Expand Down Expand Up @@ -2271,7 +2271,7 @@ Author: Tomas Vondra <[email protected]>

<listitem>
<para>
Report <varname>search_path</varname> changes to the client (Alexander Kukushkin, Jelte Fennema-Nio, Tomas Vondra)
Report <xref linkend="guc-search-path"/> changes to the client (Alexander Kukushkin, Jelte Fennema-Nio, Tomas Vondra)
<ulink url="&commit_baseurl;28a1121fd">&sect;</ulink>
<ulink url="&commit_baseurl;0d06a7eac">&sect;</ulink>
</para>
Expand Down
2 changes: 1 addition & 1 deletion src/backend/catalog/index.c
Original file line number Diff line number Diff line change
Expand Up @@ -3020,7 +3020,7 @@ index_build(Relation heapRelation,

/*
* Determine worker process details for parallel CREATE INDEX. Currently,
* only btree and BRIN have support for parallel builds.
* only btree, GIN, and BRIN have support for parallel builds.
*
* Note that planner considers parallel safety for us.
*/
Expand Down
2 changes: 1 addition & 1 deletion src/backend/optimizer/plan/planner.c
Original file line number Diff line number Diff line change
Expand Up @@ -6879,7 +6879,7 @@ plan_cluster_use_sort(Oid tableOid, Oid indexOid)
*
* tableOid is the table on which the index is to be built. indexOid is the
* OID of an index to be created or reindexed (which must be an index with
* support for parallel builds - currently btree or BRIN).
* support for parallel builds - currently btree, GIN, or BRIN).
*
* Return value is the number of parallel worker processes to request. It
* may be unsafe to proceed if this is 0. Note that this does not include the
Expand Down