=== Applying patches on top of PostgreSQL commit ID 55fa1b06780ab16a2d48532a3b68451f6b6cc3d8 === /etc/rc.d/jail: WARNING: Per-jail configuration via jail_* variables is obsolete. Please consider migrating to /etc/jail.conf. Fri Sep 4 02:44:27 UTC 2026 On branch cf/6457 nothing to commit, working tree clean === using 'git am' to apply patch ./v3-0001-Remove-no-op-PlaceHolderVars.patch === Applying: Remove no-op PlaceHolderVars Using index info to reconstruct a base tree... M src/backend/optimizer/path/equivclass.c M src/backend/optimizer/path/pathkeys.c M src/backend/optimizer/plan/initsplan.c M src/backend/optimizer/plan/planner.c M src/backend/optimizer/plan/setrefs.c M src/backend/optimizer/prep/prepjointree.c M src/backend/optimizer/util/placeholder.c M src/backend/optimizer/util/relnode.c M src/backend/optimizer/util/tlist.c M src/backend/rewrite/rewriteManip.c M src/backend/utils/adt/selfuncs.c M src/include/nodes/pathnodes.h M src/include/rewrite/rewriteManip.h Falling back to patching base and 3-way merge... Auto-merging src/include/rewrite/rewriteManip.h Auto-merging src/include/nodes/pathnodes.h Auto-merging src/backend/utils/adt/selfuncs.c Auto-merging src/backend/rewrite/rewriteManip.c Auto-merging src/backend/optimizer/util/tlist.c Auto-merging src/backend/optimizer/util/relnode.c Auto-merging src/backend/optimizer/util/placeholder.c Auto-merging src/backend/optimizer/prep/prepjointree.c Auto-merging src/backend/optimizer/plan/setrefs.c Auto-merging src/backend/optimizer/plan/planner.c Auto-merging src/backend/optimizer/plan/initsplan.c Auto-merging src/backend/optimizer/path/pathkeys.c Auto-merging src/backend/optimizer/path/equivclass.c === using 'git am' to apply patch ./v3-0002-Fixing-test-cases.patch === Applying: Fixing test cases Using index info to reconstruct a base tree... M contrib/postgres_fdw/expected/postgres_fdw.out M contrib/postgres_fdw/sql/postgres_fdw.sql M src/test/regress/expected/groupingsets.out M src/test/regress/expected/join.out M src/test/regress/expected/memoize.out M src/test/regress/expected/partition_join.out M src/test/regress/sql/join.sql M src/test/regress/sql/memoize.sql Falling back to patching base and 3-way merge... Auto-merging src/test/regress/sql/memoize.sql Auto-merging src/test/regress/sql/join.sql Auto-merging src/test/regress/expected/partition_join.out Auto-merging src/test/regress/expected/memoize.out Auto-merging src/test/regress/expected/join.out CONFLICT (content): Merge conflict in src/test/regress/expected/join.out Auto-merging src/test/regress/expected/groupingsets.out Auto-merging contrib/postgres_fdw/sql/postgres_fdw.sql Auto-merging contrib/postgres_fdw/expected/postgres_fdw.out error: Failed to merge in the changes. hint: Use 'git am --show-current-patch=diff' to see the failed patch Patch failed at 0001 Fixing test cases When you have resolved this problem, run "git am --continue". If you prefer to skip this patch, run "git am --skip" instead. To restore the original branch and stop patching, run "git am --abort". === using patch(1) to apply patch ./v3-0002-Fixing-test-cases.patch === patching file contrib/postgres_fdw/expected/postgres_fdw.out Hunk #1 succeeded at 4571 (offset 730 lines). Hunk #2 succeeded at 4580 (offset 730 lines). Hunk #3 succeeded at 4605 (offset 730 lines). patching file contrib/postgres_fdw/sql/postgres_fdw.sql Hunk #1 succeeded at 1439 (offset 339 lines). Hunk #2 succeeded at 1451 (offset 339 lines). patching file src/test/regress/expected/groupingsets.out Hunk #1 succeeded at 603 (offset 37 lines). Hunk #2 succeeded at 2651 (offset 37 lines). patching file src/test/regress/expected/join.out Hunk #2 succeeded at 4593 (offset 896 lines). Hunk #3 succeeded at 4608 (offset 896 lines). Hunk #4 succeeded at 4617 (offset 896 lines). Hunk #5 succeeded at 4682 (offset 896 lines). Hunk #6 succeeded at 4708 (offset 896 lines). Hunk #7 succeeded at 4861 (offset 896 lines). Hunk #8 succeeded at 4890 (offset 896 lines). Hunk #9 succeeded at 4982 (offset 896 lines). Hunk #10 succeeded at 5025 (offset 896 lines). Hunk #11 succeeded at 5146 (offset 923 lines). Hunk #12 succeeded at 5173 (offset 923 lines). Hunk #13 succeeded at 5269 (offset 923 lines). Hunk #14 succeeded at 6123 (offset 975 lines). Hunk #15 succeeded at 6135 (offset 975 lines). Hunk #16 succeeded at 6615 (offset 975 lines). Hunk #17 succeeded at 6645 (offset 975 lines). Hunk #18 succeeded at 7301 (offset 1054 lines). Hunk #19 succeeded at 7955 (offset 1164 lines). Hunk #20 succeeded at 7980 (offset 1164 lines). Hunk #21 succeeded at 8010 (offset 1164 lines). Hunk #22 succeeded at 8027 (offset 1164 lines). Hunk #23 succeeded at 8048 (offset 1164 lines). Hunk #24 succeeded at 8902 (offset 1222 lines). Hunk #25 FAILED at 7694. Hunk #26 succeeded at 8961 (offset 1220 lines). Hunk #27 succeeded at 8974 with fuzz 2 (offset 1220 lines). Hunk #28 succeeded at 10152 (offset 1261 lines). Hunk #29 succeeded at 11158 (offset 1263 lines). Hunk #30 succeeded at 11220 (offset 1263 lines). 1 out of 30 hunks FAILED -- saving rejects to file src/test/regress/expected/join.out.rej patching file src/test/regress/expected/memoize.out patching file src/test/regress/expected/partition_join.out Hunk #5 succeeded at 2207 (offset 7 lines). patching file src/test/regress/sql/join.sql Hunk #2 succeeded at 1533 (offset 353 lines). Hunk #3 succeeded at 1545 (offset 353 lines). Hunk #4 succeeded at 1581 (offset 353 lines). Hunk #5 succeeded at 1592 (offset 353 lines). Hunk #6 succeeded at 1643 (offset 353 lines). Hunk #7 succeeded at 1656 (offset 353 lines). Hunk #8 succeeded at 1707 (offset 353 lines). Hunk #9 succeeded at 1720 (offset 353 lines). Hunk #10 succeeded at 1734 with fuzz 1 (offset 353 lines). Hunk #11 succeeded at 1775 (offset 363 lines). Hunk #12 succeeded at 1813 (offset 363 lines). Hunk #13 succeeded at 1823 (offset 363 lines). Hunk #14 succeeded at 2376 (offset 387 lines). Hunk #15 succeeded at 2386 (offset 387 lines). Hunk #16 succeeded at 3056 (offset 494 lines). Hunk #17 succeeded at 3086 (offset 494 lines). Hunk #18 succeeded at 3104 (offset 494 lines). Hunk #19 succeeded at 3479 (offset 511 lines). Hunk #20 succeeded at 3508 (offset 511 lines). Hunk #21 succeeded at 3872 (offset 529 lines). Hunk #22 succeeded at 4309 (offset 531 lines). Hunk #23 succeeded at 4332 (offset 531 lines). patching file src/test/regress/sql/memoize.sql patching file src/test/regress/sql/partition_join.sql Unstaged changes after reset: M contrib/postgres_fdw/expected/postgres_fdw.out M contrib/postgres_fdw/sql/postgres_fdw.sql M src/test/regress/expected/groupingsets.out M src/test/regress/expected/join.out M src/test/regress/expected/memoize.out M src/test/regress/expected/partition_join.out M src/test/regress/sql/join.sql M src/test/regress/sql/memoize.sql M src/test/regress/sql/partition_join.sql Removing src/test/regress/expected/join.out.rej === using 'git apply' to apply patch ./v3-0002-Fixing-test-cases.patch === Applied patch to 'contrib/postgres_fdw/expected/postgres_fdw.out' cleanly. Applied patch to 'contrib/postgres_fdw/sql/postgres_fdw.sql' cleanly. Applied patch to 'src/test/regress/expected/groupingsets.out' cleanly. Applied patch to 'src/test/regress/expected/join.out' with conflicts. Applied patch to 'src/test/regress/expected/memoize.out' cleanly. Applied patch to 'src/test/regress/expected/partition_join.out' cleanly. Applied patch to 'src/test/regress/sql/join.sql' cleanly. Applied patch to 'src/test/regress/sql/memoize.sql' cleanly. Applied patch to 'src/test/regress/sql/partition_join.sql' cleanly. U src/test/regress/expected/join.out diff --cc src/test/regress/expected/join.out index 6a85bb246ef,22756ed0364..00000000000 --- a/src/test/regress/expected/join.out +++ b/src/test/regress/expected/join.out @@@ -8903,9 -7691,11 +8913,15 @@@ where s1.x = 1 -> Seq Scan on public.emp1 t1 Output: t1.id, t1.code -> Materialize - Output: t3.id -> Seq Scan on public.emp1 t3 ++<<<<<<< ours + Filter: (1 = 1) +(7 rows) ++======= + Output: t3.id + Filter: (phv(1) = 1) + (9 rows) ++>>>>>>> theirs -- Check that PHVs do not impose any constraints on removing self joins explain (verbose, costs off) @@@ -8961,10 -7751,10 +8977,10 @@@ ON true WHERE t3.extra IS NOT NULL AND Output: 1 -> Seq Scan on public.tbl_phv t1 Output: t1.x, t1.y - -> Index Scan using tbl_phv_idx on public.tbl_phv tr - Output: tr.x, tr.y + -> Index Only Scan using tbl_phv_idx on public.tbl_phv tr + Output: tr.x Index Cond: (tr.x = (t1.x % 2)) - Filter: (1 IS NOT NULL) + Filter: (phv(1) IS NOT NULL) (8 rows) DROP TABLE IF EXISTS tbl_phv;