pgsql: Fix timing-dependent failure in recovery test 004_timeline_switc

2025-11-04 Thread Michael Paquier
Fix timing-dependent failure in recovery test 004_timeline_switch The test introduced by 17b2d5ec759c verifies that a WAL receiver survives across a timeline jump by searching the server logs for termination messages. However, it called restart() before the timeline switch, which kills the WAL re

pgsql: Fix timing-dependent failure in recovery test 004_timeline_switc

2025-11-04 Thread Michael Paquier
Fix timing-dependent failure in recovery test 004_timeline_switch The test introduced by 17b2d5ec759c verifies that a WAL receiver survives across a timeline jump by searching the server logs for termination messages. However, it called restart() before the timeline switch, which kills the WAL re

pgsql: Fix timing-dependent failure in recovery test 004_timeline_switc

2025-11-04 Thread Michael Paquier
Fix timing-dependent failure in recovery test 004_timeline_switch The test introduced by 17b2d5ec759c verifies that a WAL receiver survives across a timeline jump by searching the server logs for termination messages. However, it called restart() before the timeline switch, which kills the WAL re

pgsql: Fix timing-dependent failure in recovery test 004_timeline_switc

2025-11-04 Thread Michael Paquier
Fix timing-dependent failure in recovery test 004_timeline_switch The test introduced by 17b2d5ec759c verifies that a WAL receiver survives across a timeline jump by searching the server logs for termination messages. However, it called restart() before the timeline switch, which kills the WAL re

pgsql: Fix timing-dependent failure in recovery test 004_timeline_switc

2025-11-04 Thread Michael Paquier
Fix timing-dependent failure in recovery test 004_timeline_switch The test introduced by 17b2d5ec759c verifies that a WAL receiver survives across a timeline jump by searching the server logs for termination messages. However, it called restart() before the timeline switch, which kills the WAL re

pgsql: Fix timing-dependent failure in recovery test 004_timeline_switc

2025-11-04 Thread Michael Paquier
Fix timing-dependent failure in recovery test 004_timeline_switch The test introduced by 17b2d5ec759c verifies that a WAL receiver survives across a timeline jump by searching the server logs for termination messages. However, it called restart() before the timeline switch, which kills the WAL re

pgsql: Fix timing-dependent failure in recovery test 004_timeline_switc

2025-11-04 Thread Michael Paquier
Fix timing-dependent failure in recovery test 004_timeline_switch The test introduced by 17b2d5ec759c verifies that a WAL receiver survives across a timeline jump by searching the server logs for termination messages. However, it called restart() before the timeline switch, which kills the WAL re

pgsql: Add sequence synchronization for logical replication.

2025-11-04 Thread Amit Kapila
Add sequence synchronization for logical replication. This patch introduces sequence synchronization. Sequences that are synced will have 2 states: - INIT (needs [re]synchronizing) - READY (is already synchronized) A new sequencesync worker is launched as needed to synchronize sequences. A

pgsql: Drop unnamed portal immediately after execution to completion

2025-11-04 Thread Michael Paquier
Drop unnamed portal immediately after execution to completion Previously, unnamed portals were kept until the next Bind message or the end of the transaction. This could cause temporary files to persist longer than expected and make logging not reflect the actual SQL responsible for the temporary

pgsql: Fix comments for ChangeVarNodes() and related functions

2025-11-04 Thread Richard Guo
Fix comments for ChangeVarNodes() and related functions The comment for ChangeVarNodes() refers to a parameter named change_RangeTblRef, which does not exist in the code. The comment for ChangeVarNodesExtended() contains an extra space, while the comment for replace_relid_callback() has an awkwar

pgsql: Fix comments for ChangeVarNodes() and related functions

2025-11-04 Thread Richard Guo
Fix comments for ChangeVarNodes() and related functions The comment for ChangeVarNodes() refers to a parameter named change_RangeTblRef, which does not exist in the code. The comment for ChangeVarNodesExtended() contains an extra space, while the comment for replace_relid_callback() has an awkwar

pgsql: Add assertions checking for the startup process in WAL replay ro

2025-11-04 Thread Michael Paquier
Add assertions checking for the startup process in WAL replay routines These assertions may prove to become useful to make sure that no process other than the startup process calls the routines where these checks are added, as we expect that these do not interfere with a WAL receiver switched to a

pgsql: jit: Fix accidentally-harmless type confusion

2025-11-04 Thread Andres Freund
jit: Fix accidentally-harmless type confusion In 2a0faed9d702, which added JIT compilation support for expressions, I accidentally used sizeof(LLVMBasicBlockRef *) instead of sizeof(LLVMBasicBlockRef) as part of computing the size of an allocation. That turns out to have no real negative consequen

pgsql: jit: Fix accidentally-harmless type confusion

2025-11-04 Thread Andres Freund
jit: Fix accidentally-harmless type confusion In 2a0faed9d702, which added JIT compilation support for expressions, I accidentally used sizeof(LLVMBasicBlockRef *) instead of sizeof(LLVMBasicBlockRef) as part of computing the size of an allocation. That turns out to have no real negative consequen

pgsql: aio: Improve assertions related to io_method

2025-11-04 Thread Andres Freund
aio: Improve assertions related to io_method First, the assertions in assign_io_method() were the wrong way round. Second, the lengthof() assertion checked the length of io_method_options, which is the wrong array to check and is always longer than pgaio_method_ops_table. While add it, add a stat

pgsql: jit: Fix accidentally-harmless type confusion

2025-11-04 Thread Andres Freund
jit: Fix accidentally-harmless type confusion In 2a0faed9d702, which added JIT compilation support for expressions, I accidentally used sizeof(LLVMBasicBlockRef *) instead of sizeof(LLVMBasicBlockRef) as part of computing the size of an allocation. That turns out to have no real negative consequen

pgsql: jit: Fix accidentally-harmless type confusion

2025-11-04 Thread Andres Freund
jit: Fix accidentally-harmless type confusion In 2a0faed9d702, which added JIT compilation support for expressions, I accidentally used sizeof(LLVMBasicBlockRef *) instead of sizeof(LLVMBasicBlockRef) as part of computing the size of an allocation. That turns out to have no real negative consequen

pgsql: aio: Improve assertions related to io_method

2025-11-04 Thread Andres Freund
aio: Improve assertions related to io_method First, the assertions in assign_io_method() were the wrong way round. Second, the lengthof() assertion checked the length of io_method_options, which is the wrong array to check and is always longer than pgaio_method_ops_table. While add it, add a stat

pgsql: jit: Fix accidentally-harmless type confusion

2025-11-04 Thread Andres Freund
jit: Fix accidentally-harmless type confusion In 2a0faed9d702, which added JIT compilation support for expressions, I accidentally used sizeof(LLVMBasicBlockRef *) instead of sizeof(LLVMBasicBlockRef) as part of computing the size of an allocation. That turns out to have no real negative consequen

pgsql: jit: Fix accidentally-harmless type confusion

2025-11-04 Thread Andres Freund
jit: Fix accidentally-harmless type confusion In 2a0faed9d702, which added JIT compilation support for expressions, I accidentally used sizeof(LLVMBasicBlockRef *) instead of sizeof(LLVMBasicBlockRef) as part of computing the size of an allocation. That turns out to have no real negative consequen

pgsql: jit: Fix accidentally-harmless type confusion

2025-11-04 Thread Andres Freund
jit: Fix accidentally-harmless type confusion In 2a0faed9d702, which added JIT compilation support for expressions, I accidentally used sizeof(LLVMBasicBlockRef *) instead of sizeof(LLVMBasicBlockRef) as part of computing the size of an allocation. That turns out to have no real negative consequen

pgsql: Special case C_COLLATION_OID in pg_newlocale_from_collation().

2025-11-04 Thread Jeff Davis
Special case C_COLLATION_OID in pg_newlocale_from_collation(). Allow pg_newlocale_from_collation(C_COLLATION_OID) to work even if there's no catalog access, which some extensions expect. Not known to be a bug without extensions involved, but backport to 18. Also corrects an issue in master with

pgsql: Special case C_COLLATION_OID in pg_newlocale_from_collation().

2025-11-04 Thread Jeff Davis
Special case C_COLLATION_OID in pg_newlocale_from_collation(). Allow pg_newlocale_from_collation(C_COLLATION_OID) to work even if there's no catalog access, which some extensions expect. Not known to be a bug without extensions involved, but backport to 18. Also corrects an issue in master with

pgsql: Add CHECK_FOR_INTERRUPTS in Evict{Rel,All}UnpinnedBuffers.

2025-11-04 Thread Masahiko Sawada
Add CHECK_FOR_INTERRUPTS in Evict{Rel,All}UnpinnedBuffers. This commit adds CHECK_FOR_INTERRUPTS to the shared buffer iteration loops in EvictRelUnpinnedBuffers and EvictAllUnpinnedBuffers. These functions, used by pg_buffercache's pg_buffercache_evict_relation and pg_buffercache_evict_all, can no

pgsql: Add CHECK_FOR_INTERRUPTS in Evict{Rel,All}UnpinnedBuffers.

2025-11-04 Thread Masahiko Sawada
Add CHECK_FOR_INTERRUPTS in Evict{Rel,All}UnpinnedBuffers. This commit adds CHECK_FOR_INTERRUPTS to the shared buffer iteration loops in EvictRelUnpinnedBuffers and EvictAllUnpinnedBuffers. These functions, used by pg_buffercache's pg_buffercache_evict_relation and pg_buffercache_evict_all, can no

pgsql: Fix possible usage of incorrect UPPERREL_SETOP RelOptInfo

2025-11-04 Thread David Rowley
Fix possible usage of incorrect UPPERREL_SETOP RelOptInfo 03d40e4b5 allowed dummy UNION [ALL] children to be removed from the plan by checking for is_dummy_rel(). That commit neglected to still account for the relids from the dummy rel so that the correct UPPERREL_SETOP RelOptInfo could be found

pgsql: Fix snapshot handling bug in recent BRIN fix

2025-11-04 Thread Álvaro Herrera
Fix snapshot handling bug in recent BRIN fix Commit a95e3d84c0e0 added ActiveSnapshot push+pop when processing work-items (BRIN autosummarization), but forgot to handle the case of a transaction failing during the run, which drops the snapshot untimely. Fix by making the pop conditional on an elem

pgsql: Fix snapshot handling bug in recent BRIN fix

2025-11-04 Thread Álvaro Herrera
Fix snapshot handling bug in recent BRIN fix Commit a95e3d84c0e0 added ActiveSnapshot push+pop when processing work-items (BRIN autosummarization), but forgot to handle the case of a transaction failing during the run, which drops the snapshot untimely. Fix by making the pop conditional on an elem

pgsql: Fix snapshot handling bug in recent BRIN fix

2025-11-04 Thread Álvaro Herrera
Fix snapshot handling bug in recent BRIN fix Commit a95e3d84c0e0 added ActiveSnapshot push+pop when processing work-items (BRIN autosummarization), but forgot to handle the case of a transaction failing during the run, which drops the snapshot untimely. Fix by making the pop conditional on an elem

pgsql: Fix snapshot handling bug in recent BRIN fix

2025-11-04 Thread Álvaro Herrera
Fix snapshot handling bug in recent BRIN fix Commit a95e3d84c0e0 added ActiveSnapshot push+pop when processing work-items (BRIN autosummarization), but forgot to handle the case of a transaction failing during the run, which drops the snapshot untimely. Fix by making the pop conditional on an elem

pgsql: Fix snapshot handling bug in recent BRIN fix

2025-11-04 Thread Álvaro Herrera
Fix snapshot handling bug in recent BRIN fix Commit a95e3d84c0e0 added ActiveSnapshot push+pop when processing work-items (BRIN autosummarization), but forgot to handle the case of a transaction failing during the run, which drops the snapshot untimely. Fix by making the pop conditional on an elem

pgsql: Fix snapshot handling bug in recent BRIN fix

2025-11-04 Thread Álvaro Herrera
Fix snapshot handling bug in recent BRIN fix Commit a95e3d84c0e0 added ActiveSnapshot push+pop when processing work-items (BRIN autosummarization), but forgot to handle the case of a transaction failing during the run, which drops the snapshot untimely. Fix by making the pop conditional on an elem

pgsql: Fix snapshot handling bug in recent BRIN fix

2025-11-04 Thread Álvaro Herrera
Fix snapshot handling bug in recent BRIN fix Commit a95e3d84c0e0 added ActiveSnapshot push+pop when processing work-items (BRIN autosummarization), but forgot to handle the case of a transaction failing during the run, which drops the snapshot untimely. Fix by making the pop conditional on an elem

pgsql: Trim TIDs during parallel GIN builds more eagerly

2025-11-04 Thread Tomas Vondra
Trim TIDs during parallel GIN builds more eagerly The parallel GIN builds perform "freezing" of TID lists when merging chunks built earlier. This means determining what part of the list can no longer change, depending on the last received chunk. The frozen part can be evicted from memory and writt

pgsql: psql: Add tab completion for COPY ... PROGRAM.

2025-11-04 Thread Masahiko Sawada
psql: Add tab completion for COPY ... PROGRAM. This commit adds tab completion support for COPY TO PROGRAM and COPY FROM PROGRAM syntax in psql. Author: Yugo Nagata Reviewed-by: Masahiko Sawada Discussion: https://postgr.es/m/[email protected] Branch --

pgsql: psql: Improve tab completion for COPY ... STDIN/STDOUT.

2025-11-04 Thread Masahiko Sawada
psql: Improve tab completion for COPY ... STDIN/STDOUT. This commit enhances tab completion for both COPY FROM and COPY TO commands to suggest STDIN and STDOUT, respectively. To make suggesting both file names and keywords easier, it introduces a new COMPLETE_WITH_FILES_PLUS() macro. Author: Yug

pgsql: Backpatch: Fix warnings about declaration of environ on MinGW

2025-11-04 Thread Andres Freund
Backpatch: Fix warnings about declaration of environ on MinGW Backpatch commit 7bc9a8bdd2d to 13-17. The motivation for backpatching is that we want to update CI to Debian Trixie. Trixie contains a newer mingw installation, which would trigger the warning addressed by 7bc9a8bdd2d. The risk of back

pgsql: ci: debian: Switch to Debian Trixie release

2025-11-04 Thread Andres Freund
ci: debian: Switch to Debian Trixie release Debian Trixie CI images are generated now [1], so use them with the following changes: - detect_stack_use_after_return=0 option is added to the ASAN_OPTIONS because ASAN uses a "shadow stack" to track stack variable lifetimes and this confuses Postg

pgsql: Backpatch: Fix warnings about declaration of environ on MinGW

2025-11-04 Thread Andres Freund
Backpatch: Fix warnings about declaration of environ on MinGW Backpatch commit 7bc9a8bdd2d to 13-17. The motivation for backpatching is that we want to update CI to Debian Trixie. Trixie contains a newer mingw installation, which would trigger the warning addressed by 7bc9a8bdd2d. The risk of back

pgsql: ci: debian: Switch to Debian Trixie release

2025-11-04 Thread Andres Freund
ci: debian: Switch to Debian Trixie release Debian Trixie CI images are generated now [1], so use them with the following changes: - detect_stack_use_after_return=0 option is added to the ASAN_OPTIONS because ASAN uses a "shadow stack" to track stack variable lifetimes and this confuses Postg

pgsql: Backpatch: Fix warnings about declaration of environ on MinGW

2025-11-04 Thread Andres Freund
Backpatch: Fix warnings about declaration of environ on MinGW Backpatch commit 7bc9a8bdd2d to 13-17. The motivation for backpatching is that we want to update CI to Debian Trixie. Trixie contains a newer mingw installation, which would trigger the warning addressed by 7bc9a8bdd2d. The risk of back

pgsql: Backpatch: Fix warnings about declaration of environ on MinGW

2025-11-04 Thread Andres Freund
Backpatch: Fix warnings about declaration of environ on MinGW Backpatch commit 7bc9a8bdd2d to 13-17. The motivation for backpatching is that we want to update CI to Debian Trixie. Trixie contains a newer mingw installation, which would trigger the warning addressed by 7bc9a8bdd2d. The risk of back

pgsql: ci: debian: Switch to Debian Trixie release

2025-11-04 Thread Andres Freund
ci: debian: Switch to Debian Trixie release Debian Trixie CI images are generated now [1], so use them with the following changes: - detect_stack_use_after_return=0 option is added to the ASAN_OPTIONS because ASAN uses a "shadow stack" to track stack variable lifetimes and this confuses Postg

pgsql: ci: debian: Switch to Debian Trixie release

2025-11-04 Thread Andres Freund
ci: debian: Switch to Debian Trixie release Debian Trixie CI images are generated now [1], so use them with the following changes: - detect_stack_use_after_return=0 option is added to the ASAN_OPTIONS because ASAN uses a "shadow stack" to track stack variable lifetimes and this confuses Postg

pgsql: Backpatch: Fix warnings about declaration of environ on MinGW

2025-11-04 Thread Andres Freund
Backpatch: Fix warnings about declaration of environ on MinGW Backpatch commit 7bc9a8bdd2d to 13-17. The motivation for backpatching is that we want to update CI to Debian Trixie. Trixie contains a newer mingw installation, which would trigger the warning addressed by 7bc9a8bdd2d. The risk of back

pgsql: ci: debian: Switch to Debian Trixie release

2025-11-04 Thread Andres Freund
ci: debian: Switch to Debian Trixie release Debian Trixie CI images are generated now [1], so use them with the following changes: - detect_stack_use_after_return=0 option is added to the ASAN_OPTIONS because ASAN uses a "shadow stack" to track stack variable lifetimes and this confuses Postg

pgsql: Limit the size of TID lists during parallel GIN build

2025-11-04 Thread Tomas Vondra
Limit the size of TID lists during parallel GIN build When building intermediate TID lists during parallel GIN builds, split the sorted lists into smaller chunks, to limit the amount of memory needed when merging the chunks later. The leader may need to keep in memory up to one chunk per worker,

pgsql: Limit the size of TID lists during parallel GIN build

2025-11-04 Thread Tomas Vondra
Limit the size of TID lists during parallel GIN build When building intermediate TID lists during parallel GIN builds, split the sorted lists into smaller chunks, to limit the amount of memory needed when merging the chunks later. The leader may need to keep in memory up to one chunk per worker,

pgsql: Remove redundant memset() introduced by a0942f4.

2025-11-04 Thread Jeff Davis
Remove redundant memset() introduced by a0942f4. Reported-by: Chao Li Discussion: https://postgr.es/m/CAEoWx2kAkNaDa01O0nKsQmkfEmxsDvm09SU=f1t0cv8ew3q...@mail.gmail.com Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/4bfaea11d2d686a06487c2e33297bf17f12732d7 Modif

pgsql: Allow "SET list_guc TO NULL" to specify setting the GUC to empty

2025-11-04 Thread Tom Lane
Allow "SET list_guc TO NULL" to specify setting the GUC to empty. We have never had a SET syntax that allows setting a GUC_LIST_INPUT parameter to be an empty list. A locution such as SET search_path = ''; doesn't mean that; it means setting the GUC to contain a single item that is an emp

pgsql: Have psql's "\? variables" show csv_fieldsep

2025-11-04 Thread Álvaro Herrera
Have psql's "\? variables" show csv_fieldsep Accidental omission in commit aa2ba50c2c13. There are too many lists of these variables ... Discussion: https://postgr.es/m/[email protected] Branch -- REL_13_STABLE Details --- https://git.postgresql.org/pg/commitdiff

pgsql: Have psql's "\? variables" show csv_fieldsep

2025-11-04 Thread Álvaro Herrera
Have psql's "\? variables" show csv_fieldsep Accidental omission in commit aa2ba50c2c13. There are too many lists of these variables ... Discussion: https://postgr.es/m/[email protected] Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/93b7ab

pgsql: Have psql's "\? variables" show csv_fieldsep

2025-11-04 Thread Álvaro Herrera
Have psql's "\? variables" show csv_fieldsep Accidental omission in commit aa2ba50c2c13. There are too many lists of these variables ... Discussion: https://postgr.es/m/[email protected] Branch -- REL_16_STABLE Details --- https://git.postgresql.org/pg/commitdiff

pgsql: Have psql's "\? variables" show csv_fieldsep

2025-11-04 Thread Álvaro Herrera
Have psql's "\? variables" show csv_fieldsep Accidental omission in commit aa2ba50c2c13. There are too many lists of these variables ... Discussion: https://postgr.es/m/[email protected] Branch -- REL_14_STABLE Details --- https://git.postgresql.org/pg/commitdiff

pgsql: Have psql's "\? variables" show csv_fieldsep

2025-11-04 Thread Álvaro Herrera
Have psql's "\? variables" show csv_fieldsep Accidental omission in commit aa2ba50c2c13. There are too many lists of these variables ... Discussion: https://postgr.es/m/[email protected] Branch -- REL_17_STABLE Details --- https://git.postgresql.org/pg/commitdiff

pgsql: Have psql's "\? variables" show csv_fieldsep

2025-11-04 Thread Álvaro Herrera
Have psql's "\? variables" show csv_fieldsep Accidental omission in commit aa2ba50c2c13. There are too many lists of these variables ... Discussion: https://postgr.es/m/[email protected] Branch -- REL_15_STABLE Details --- https://git.postgresql.org/pg/commitdiff

pgsql: Have psql's "\? variables" show csv_fieldsep

2025-11-04 Thread Álvaro Herrera
Have psql's "\? variables" show csv_fieldsep Accidental omission in commit aa2ba50c2c13. There are too many lists of these variables ... Discussion: https://postgr.es/m/[email protected] Branch -- REL_18_STABLE Details --- https://git.postgresql.org/pg/commitdiff

pgsql: Tighten check for generated column in partition key expression

2025-11-04 Thread Peter Eisentraut
Tighten check for generated column in partition key expression A generated column may end up being part of the partition key expression, if it's specified as an expression e.g. "()" or if the partition key expression contains a whole-row reference, even though we do not allow a generated column to

pgsql: Tighten check for generated column in partition key expression

2025-11-04 Thread Peter Eisentraut
Tighten check for generated column in partition key expression A generated column may end up being part of the partition key expression, if it's specified as an expression e.g. "()" or if the partition key expression contains a whole-row reference, even though we do not allow a generated column to

pgsql: Tighten check for generated column in partition key expression

2025-11-04 Thread Peter Eisentraut
Tighten check for generated column in partition key expression A generated column may end up being part of the partition key expression, if it's specified as an expression e.g. "()" or if the partition key expression contains a whole-row reference, even though we do not allow a generated column to

pgsql: Tighten check for generated column in partition key expression

2025-11-04 Thread Peter Eisentraut
Tighten check for generated column in partition key expression A generated column may end up being part of the partition key expression, if it's specified as an expression e.g. "()" or if the partition key expression contains a whole-row reference, even though we do not allow a generated column to

pgsql: Tighten check for generated column in partition key expression

2025-11-04 Thread Peter Eisentraut
Tighten check for generated column in partition key expression A generated column may end up being part of the partition key expression, if it's specified as an expression e.g. "()" or if the partition key expression contains a whole-row reference, even though we do not allow a generated column to

pgsql: Tighten check for generated column in partition key expression

2025-11-04 Thread Peter Eisentraut
Tighten check for generated column in partition key expression A generated column may end up being part of the partition key expression, if it's specified as an expression e.g. "()" or if the partition key expression contains a whole-row reference, even though we do not allow a generated column to

pgsql: Tighten check for generated column in partition key expression

2025-11-04 Thread Peter Eisentraut
Tighten check for generated column in partition key expression A generated column may end up being part of the partition key expression, if it's specified as an expression e.g. "()" or if the partition key expression contains a whole-row reference, even though we do not allow a generated column to

pgsql: BRIN autosummarization may need a snapshot

2025-11-04 Thread Álvaro Herrera
BRIN autosummarization may need a snapshot It's possible to define BRIN indexes on functions that require a snapshot to run, but the autosummarization feature introduced by commit 7526e10224f0 fails to provide one. This causes autovacuum to leave a BRIN placeholder tuple behind after a failed wor

pgsql: BRIN autosummarization may need a snapshot

2025-11-04 Thread Álvaro Herrera
BRIN autosummarization may need a snapshot It's possible to define BRIN indexes on functions that require a snapshot to run, but the autosummarization feature introduced by commit 7526e10224f0 fails to provide one. This causes autovacuum to leave a BRIN placeholder tuple behind after a failed wor

pgsql: BRIN autosummarization may need a snapshot

2025-11-04 Thread Álvaro Herrera
BRIN autosummarization may need a snapshot It's possible to define BRIN indexes on functions that require a snapshot to run, but the autosummarization feature introduced by commit 7526e10224f0 fails to provide one. This causes autovacuum to leave a BRIN placeholder tuple behind after a failed wor

pgsql: BRIN autosummarization may need a snapshot

2025-11-04 Thread Álvaro Herrera
BRIN autosummarization may need a snapshot It's possible to define BRIN indexes on functions that require a snapshot to run, but the autosummarization feature introduced by commit 7526e10224f0 fails to provide one. This causes autovacuum to leave a BRIN placeholder tuple behind after a failed wor

pgsql: BRIN autosummarization may need a snapshot

2025-11-04 Thread Álvaro Herrera
BRIN autosummarization may need a snapshot It's possible to define BRIN indexes on functions that require a snapshot to run, but the autosummarization feature introduced by commit 7526e10224f0 fails to provide one. This causes autovacuum to leave a BRIN placeholder tuple behind after a failed wor

pgsql: BRIN autosummarization may need a snapshot

2025-11-04 Thread Álvaro Herrera
BRIN autosummarization may need a snapshot It's possible to define BRIN indexes on functions that require a snapshot to run, but the autosummarization feature introduced by commit 7526e10224f0 fails to provide one. This causes autovacuum to leave a BRIN placeholder tuple behind after a failed wor

pgsql: BRIN autosummarization may need a snapshot

2025-11-04 Thread Álvaro Herrera
BRIN autosummarization may need a snapshot It's possible to define BRIN indexes on functions that require a snapshot to run, but the autosummarization feature introduced by commit 7526e10224f0 fails to provide one. This causes autovacuum to leave a BRIN placeholder tuple behind after a failed wor

pgsql: Error message stylistic correction

2025-11-04 Thread Peter Eisentraut
Error message stylistic correction Fixup for commit ef5e60a9d35: The inconsistent use of articles was a bit awkward. Branch -- REL_18_STABLE Details --- https://git.postgresql.org/pg/commitdiff/1baae827ef51ca12ac5cd83775905a46f8e794af Modified Files -- src/backend/parser/par

pgsql: Error message stylistic correction

2025-11-04 Thread Peter Eisentraut
Error message stylistic correction Fixup for commit ef5e60a9d35: The inconsistent use of articles was a bit awkward. Branch -- REL_17_STABLE Details --- https://git.postgresql.org/pg/commitdiff/1e6dfdaa04399a531789660864648919be071686 Modified Files -- src/backend/parser/par

pgsql: Error message stylistic correction

2025-11-04 Thread Peter Eisentraut
Error message stylistic correction Fixup for commit ef5e60a9d35: The inconsistent use of articles was a bit awkward. Branch -- master Details --- https://git.postgresql.org/pg/commitdiff/c09a06918dff9a1651ed12a24eb03712331b234b Modified Files -- src/backend/parser/parse_expr

pgsql: libpq: Improve error handling in passwordFromFile()

2025-11-04 Thread Michael Paquier
libpq: Improve error handling in passwordFromFile() Previously, passwordFromFile() returned NULL for valid cases (like no matching password found) and actual errors (two out-of-memory paths). This made it impossible for its sole caller, pqConnectOptions2(), to distinguish between these scenarios a

Re: pgsql: pg_createsubscriber: Fix error complaining about the wrong thing

2025-11-04 Thread Peter Eisentraut
On 31.10.25 18:08, Álvaro Herrera wrote: pg_createsubscriber: Fix error complaining about the wrong thing The code updates the system identifier, then runs pg_walreset; if the latter fails, it complains about the former, which makes no sense. Change the error message to complain about the right

pgsql: Use USECS_PER_SEC from datatype/timestamp.h

2025-11-04 Thread Álvaro Herrera
Use USECS_PER_SEC from datatype/timestamp.h We had two places defining their own constants for this. Author: Álvaro Herrera Reviewed-by: Peter Smith Discussion: https://postgr.es/m/[email protected] Branch -- master Details --- https://git.postgresql.org/pg/comm