pgsql: Doc: Improve documentation of stream abort.

2025-06-24 Thread Amit Kapila
Doc: Improve documentation of stream abort. Protocol v4 introduces parallel streaming, which allows Stream Abort messages to include additional abort information such as LSN and timestamp. However, the current documentation only states, "This field is available since protocol version 4," which may

pgsql: Doc: Improve documentation of stream abort.

2025-06-24 Thread Amit Kapila
Doc: Improve documentation of stream abort. Protocol v4 introduces parallel streaming, which allows Stream Abort messages to include additional abort information such as LSN and timestamp. However, the current documentation only states, "This field is available since protocol version 4," which may

pgsql: Doc: Improve documentation of stream abort.

2025-06-24 Thread Amit Kapila
Doc: Improve documentation of stream abort. Protocol v4 introduces parallel streaming, which allows Stream Abort messages to include additional abort information such as LSN and timestamp. However, the current documentation only states, "This field is available since protocol version 4," which may

pgsql: Avoid scribbling of VACUUM options

2025-06-24 Thread Michael Paquier
Avoid scribbling of VACUUM options This fixes two issues with the handling of VacuumParams in vacuum_rel(). This code path has the idea to change the passed-in pointer of VacuumParams for the "truncate" and "index_cleanup" options for the relation worked on, impacting the two following scenarios w

pgsql: Prevent excessive delays before launching new logrep workers.

2025-06-24 Thread Tom Lane
Prevent excessive delays before launching new logrep workers. The logical replication launcher process would sometimes sleep for as much as 3 minutes before noticing that it is supposed to launch a new worker. This could happen if (1) WaitForReplicationWorkerAttach absorbed a process latch wakeup

pgsql: Avoid scribbling of VACUUM options

2025-06-24 Thread Michael Paquier
Avoid scribbling of VACUUM options This fixes two issues with the handling of VacuumParams in vacuum_rel(). This code path has the idea to change the passed-in pointer of VacuumParams for the "truncate" and "index_cleanup" options for the relation worked on, impacting the two following scenarios w

pgsql: Fix virtual generated column type checking for ALTER TABLE

2025-06-24 Thread Peter Eisentraut
Fix virtual generated column type checking for ALTER TABLE Virtual generated columns have some special checks in CheckAttributeType(), mainly to check that domains are not used. But this check was only applied during CREATE TABLE, not during ALTER TABLE. This fixes that. Reported-by: jian he D

pgsql: Avoid scribbling of VACUUM options

2025-06-24 Thread Michael Paquier
Avoid scribbling of VACUUM options This fixes two issues with the handling of VacuumParams in vacuum_rel(). This code path has the idea to change the passed-in pointer of VacuumParams for the "truncate" and "index_cleanup" options for the relation worked on, impacting the two following scenarios w

pgsql: Avoid scribbling of VACUUM options

2025-06-24 Thread Michael Paquier
Avoid scribbling of VACUUM options This fixes two issues with the handling of VacuumParams in vacuum_rel(). This code path has the idea to change the passed-in pointer of VacuumParams for the "truncate" and "index_cleanup" options for the relation worked on, impacting the two following scenarios w

pgsql: Avoid scribbling of VACUUM options

2025-06-24 Thread Michael Paquier
Avoid scribbling of VACUUM options This fixes two issues with the handling of VacuumParams in vacuum_rel(). This code path has the idea to change the passed-in pointer of VacuumParams for the "truncate" and "index_cleanup" options for the relation worked on, impacting the two following scenarios w

pgsql: Avoid scribbling of VACUUM options

2025-06-24 Thread Michael Paquier
Avoid scribbling of VACUUM options This fixes two issues with the handling of VacuumParams in vacuum_rel(). This code path has the idea to change the passed-in pointer of VacuumParams for the "truncate" and "index_cleanup" options for the relation worked on, impacting the two following scenarios w

pgsql: doc: Add secondary index entries for vacuum-related parameters.

2025-06-24 Thread Fujii Masao
doc: Add secondary index entries for vacuum-related parameters. For parameters that exist as both configuration and storage options, the documentation typically includes secondary index entries to help users distinguish and locate the relevant references easily. However, such index entries were m

pgsql: doc: Fix type description of io_workers GUC for consistency.

2025-06-24 Thread Fujii Masao
doc: Fix type description of io_workers GUC for consistency. The documentation previously described the type of the io_workers GUC parameter as "int". However, the documentation consistently uses "integer" for parameters of this type. This commit updates the type description of io_workers to "int

pgsql: doc: Mention ANALYZE VERBOSE in track_cost_delay_timing descript

2025-06-24 Thread Fujii Masao
doc: Mention ANALYZE VERBOSE in track_cost_delay_timing description. The documentation for track_cost_delay_timing describes where cost-based vacuum delay timing information is displayed when the setting is enabled. While this information is also shown in the output of ANALYZE VERBOSE, that was pr

pgsql: Prevent excessive delays before launching new logrep workers.

2025-06-24 Thread Tom Lane
Prevent excessive delays before launching new logrep workers. The logical replication launcher process would sometimes sleep for as much as 3 minutes before noticing that it is supposed to launch a new worker. This could happen if (1) WaitForReplicationWorkerAttach absorbed a process latch wakeup

pgsql: Prevent excessive delays before launching new logrep workers.

2025-06-24 Thread Tom Lane
Prevent excessive delays before launching new logrep workers. The logical replication launcher process would sometimes sleep for as much as 3 minutes before noticing that it is supposed to launch a new worker. This could happen if (1) WaitForReplicationWorkerAttach absorbed a process latch wakeup

pgsql: Improve jumble squashing through CoerceViaIO and RelabelType

2025-06-24 Thread Álvaro Herrera
Improve jumble squashing through CoerceViaIO and RelabelType There's no principled reason for query jumbling to only remove the first layer of RelabelType and CoerceViaIO. Change it to see through as many layers as there are. Branch -- master Details --- https://git.postgresql.org/pg/co

pgsql: Make query jumbling also squash PARAM_EXTERN params

2025-06-24 Thread Álvaro Herrera
Make query jumbling also squash PARAM_EXTERN params Commit 62d712ecfd94 made query jumbling squash lists of Consts as a single element, but there's no reason not to treat PARAM_EXTERN parameters the same. For these purposes, these values are indeed constants for any particular execution of a quer

pgsql: Fix cache-dependent test failures in logical decoding.

2025-06-24 Thread Masahiko Sawada
Fix cache-dependent test failures in logical decoding. The regression test added in commit 1230be12f failed with CLOBBER_CACHE_ALWAYS builds as it depends on cache behavior. This test failure occurred only on v13 because the original data loss problem was fixed differently in v13 compared to v14 a

pgsql: Test that vacuum removes tuples older than OldestXmin

2025-06-24 Thread Melanie Plageman
Test that vacuum removes tuples older than OldestXmin If vacuum fails to prune a tuple killed before OldestXmin, it will decide to freeze its xmax and later error out in pre-freeze checks. Add a test reproducing this scenario to the recovery suite which creates a table on a primary, updates the t

pgsql: doc: Remove dead link to NewbieDoc Docbook Guide

2025-06-24 Thread Daniel Gustafsson
doc: Remove dead link to NewbieDoc Docbook Guide The link returns 404 and no replacement is available in the project on Sourceforge where the content once was. Since we already link to resources for both beginner and experienced docs hackers, remove the the dead link. Backpatch to all supported v

pgsql: doc: Remove dead link to NewbieDoc Docbook Guide

2025-06-24 Thread Daniel Gustafsson
doc: Remove dead link to NewbieDoc Docbook Guide The link returns 404 and no replacement is available in the project on Sourceforge where the content once was. Since we already link to resources for both beginner and experienced docs hackers, remove the the dead link. Backpatch to all supported v

pgsql: doc: Remove dead link to NewbieDoc Docbook Guide

2025-06-24 Thread Daniel Gustafsson
doc: Remove dead link to NewbieDoc Docbook Guide The link returns 404 and no replacement is available in the project on Sourceforge where the content once was. Since we already link to resources for both beginner and experienced docs hackers, remove the the dead link. Backpatch to all supported v

pgsql: doc: Remove dead link to NewbieDoc Docbook Guide

2025-06-24 Thread Daniel Gustafsson
doc: Remove dead link to NewbieDoc Docbook Guide The link returns 404 and no replacement is available in the project on Sourceforge where the content once was. Since we already link to resources for both beginner and experienced docs hackers, remove the the dead link. Backpatch to all supported v

pgsql: doc: Remove dead link to NewbieDoc Docbook Guide

2025-06-24 Thread Daniel Gustafsson
doc: Remove dead link to NewbieDoc Docbook Guide The link returns 404 and no replacement is available in the project on Sourceforge where the content once was. Since we already link to resources for both beginner and experienced docs hackers, remove the the dead link. Backpatch to all supported v

pgsql: doc: Remove dead link to NewbieDoc Docbook Guide

2025-06-24 Thread Daniel Gustafsson
doc: Remove dead link to NewbieDoc Docbook Guide The link returns 404 and no replacement is available in the project on Sourceforge where the content once was. Since we already link to resources for both beginner and experienced docs hackers, remove the the dead link. Backpatch to all supported v