pgsql: Fix test case from 40c242830

2025-10-20 Thread Richard Guo
Fix test case from 40c242830 I mistakenly included the "Replaces" lines describing the origin of Result nodes in groupingsets.out, which actually come from a feature not available in v18. Mea culpa. Per buildfarm. Discussion: https://postgr.es/m/CAMbWs4_VxjdM-nBvt8YE=84rE4OLBES27Wz1P0=9z6kgwpq

pgsql: Fix pushdown of degenerate HAVING clauses

2025-10-20 Thread Richard Guo
Fix pushdown of degenerate HAVING clauses 67a54b9e8 taught the planner to push down HAVING clauses even when grouping sets are present, as long as the clause does not reference any columns that are nullable by the grouping sets. However, there was an oversight: if any empty grouping sets are pres

pgsql: Fix pushdown of degenerate HAVING clauses

2025-10-20 Thread Richard Guo
Fix pushdown of degenerate HAVING clauses 67a54b9e8 taught the planner to push down HAVING clauses even when grouping sets are present, as long as the clause does not reference any columns that are nullable by the grouping sets. However, there was an oversight: if any empty grouping sets are pres

pgsql: Fix POSIX compliance in pgwin32_unsetenv() for "name" argument

2025-10-20 Thread Michael Paquier
Fix POSIX compliance in pgwin32_unsetenv() for "name" argument pgwin32_unsetenv() (compatibility routine of unsetenv() on Windows) lacks the input validation that its sibling pgwin32_setenv() has. Without these checks, calling unsetenv() with incorrect names crashes on WIN32. However, invalid nam

pgsql: Fix POSIX compliance in pgwin32_unsetenv() for "name" argument

2025-10-20 Thread Michael Paquier
Fix POSIX compliance in pgwin32_unsetenv() for "name" argument pgwin32_unsetenv() (compatibility routine of unsetenv() on Windows) lacks the input validation that its sibling pgwin32_setenv() has. Without these checks, calling unsetenv() with incorrect names crashes on WIN32. However, invalid nam

pgsql: Fix POSIX compliance in pgwin32_unsetenv() for "name" argument

2025-10-20 Thread Michael Paquier
Fix POSIX compliance in pgwin32_unsetenv() for "name" argument pgwin32_unsetenv() (compatibility routine of unsetenv() on Windows) lacks the input validation that its sibling pgwin32_setenv() has. Without these checks, calling unsetenv() with incorrect names crashes on WIN32. However, invalid nam

pgsql: Fix POSIX compliance in pgwin32_unsetenv() for "name" argument

2025-10-20 Thread Michael Paquier
Fix POSIX compliance in pgwin32_unsetenv() for "name" argument pgwin32_unsetenv() (compatibility routine of unsetenv() on Windows) lacks the input validation that its sibling pgwin32_setenv() has. Without these checks, calling unsetenv() with incorrect names crashes on WIN32. However, invalid nam

pgsql: Fix POSIX compliance in pgwin32_unsetenv() for "name" argument

2025-10-20 Thread Michael Paquier
Fix POSIX compliance in pgwin32_unsetenv() for "name" argument pgwin32_unsetenv() (compatibility routine of unsetenv() on Windows) lacks the input validation that its sibling pgwin32_setenv() has. Without these checks, calling unsetenv() with incorrect names crashes on WIN32. However, invalid nam

pgsql: Fix POSIX compliance in pgwin32_unsetenv() for "name" argument

2025-10-20 Thread Michael Paquier
Fix POSIX compliance in pgwin32_unsetenv() for "name" argument pgwin32_unsetenv() (compatibility routine of unsetenv() on Windows) lacks the input validation that its sibling pgwin32_setenv() has. Without these checks, calling unsetenv() with incorrect names crashes on WIN32. However, invalid nam

pgsql: Support COPY TO for partitioned tables.

2025-10-20 Thread Masahiko Sawada
Support COPY TO for partitioned tables. Previously, COPY TO command didn't support directly specifying partitioned tables so users had to use COPY (SELECT ...) TO variant. This commit adds direct COPY TO support for partitioned tables, improving both usability and performance. Performance tests s

pgsql: Add .abi-compliance-history to v18 branch.

2025-10-20 Thread Tom Lane
Add .abi-compliance-history to v18 branch. This is just a quick commit to verify that the buildfarm ABI checker responds to this control file. Once we've tested that, we will update the file to point at c8af5019b. There's documentation mop-up yet to do, too. Discussion: https://postgr.es/m/aPJ03

pgsql: Fix thinko in commit 7d129ba54.

2025-10-20 Thread Tom Lane
Fix thinko in commit 7d129ba54. The revised logic in 001_ssltests.pl would fail if openssl doesn't work or if Perl is a 32-bit build, because it had already overwritten $serialno with something inappropriate to use in the eventual match. We could go back to the previous code layout, but it seems

pgsql: Fix thinko in commit 7d129ba54.

2025-10-20 Thread Tom Lane
Fix thinko in commit 7d129ba54. The revised logic in 001_ssltests.pl would fail if openssl doesn't work or if Perl is a 32-bit build, because it had already overwritten $serialno with something inappropriate to use in the eventual match. We could go back to the previous code layout, but it seems

pgsql: Fix thinko in commit 7d129ba54.

2025-10-20 Thread Tom Lane
Fix thinko in commit 7d129ba54. The revised logic in 001_ssltests.pl would fail if openssl doesn't work or if Perl is a 32-bit build, because it had already overwritten $serialno with something inappropriate to use in the eventual match. We could go back to the previous code layout, but it seems

pgsql: Fix thinko in commit 7d129ba54.

2025-10-20 Thread Tom Lane
Fix thinko in commit 7d129ba54. The revised logic in 001_ssltests.pl would fail if openssl doesn't work or if Perl is a 32-bit build, because it had already overwritten $serialno with something inappropriate to use in the eventual match. We could go back to the previous code layout, but it seems