=== Applying patches on top of PostgreSQL commit ID 7bc88c3d6f3af3af5330c0e209c8a3c411267d00 === /etc/rc.d/jail: WARNING: Per-jail configuration via jail_* variables is obsolete. Please consider migrating to /etc/jail.conf. Fri Dec 5 04:21:23 UTC 2025 On branch cf/6184 nothing to commit, working tree clean === using 'git am' to apply patch ./v4-0001-Store-information-about-range-table-flattening-in.patch === Applying: Store information about range-table flattening in the final plan. === using 'git am' to apply patch ./v4-0002-Store-information-about-elided-nodes-in-the-final.patch === Applying: Store information about elided nodes in the final plan. === using 'git am' to apply patch ./v4-0003-Store-information-about-Append-node-consolidation.patch === Applying: Store information about Append node consolidation in the final plan. error: sha1 information is lacking or useless (src/backend/optimizer/plan/planner.c). error: could not build fake ancestor hint: Use 'git am --show-current-patch=diff' to see the failed patch Patch failed at 0001 Store information about Append node consolidation in the final plan. 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 ./v4-0003-Store-information-about-Append-node-consolidation.patch === patching file contrib/pg_overexplain/expected/pg_overexplain.out patching file contrib/pg_overexplain/pg_overexplain.c patching file src/backend/optimizer/path/allpaths.c patching file src/backend/optimizer/path/joinrels.c patching file src/backend/optimizer/plan/createplan.c patching file src/backend/optimizer/plan/planner.c patching file src/backend/optimizer/prep/prepunion.c patching file src/backend/optimizer/util/pathnode.c Hunk #1 succeeded at 1301 (offset 1 line). Hunk #2 succeeded at 1311 (offset 1 line). Hunk #3 succeeded at 1474 (offset 1 line). Hunk #4 succeeded at 1490 (offset 1 line). Hunk #5 succeeded at 3955 (offset 1 line). patching file src/include/nodes/pathnodes.h Hunk #1 succeeded at 2172 (offset 1 line). Hunk #2 succeeded at 2193 (offset 1 line). Hunk #3 succeeded at 2210 (offset 1 line). patching file src/include/nodes/plannodes.h patching file src/include/optimizer/pathnode.h Hunk #1 succeeded at 71 with fuzz 1 (offset 1 line). [cf/6184 7951c5474a8] Store information about Append node consolidation in the final plan. Author: Robert Haas Date: Mon Oct 20 14:23:07 2025 -0400 11 files changed, 175 insertions(+), 27 deletions(-) === using 'git am' to apply patch ./v4-0004-Temporary-hack-to-unbreak-partitionwise-join-cont.patch === fatal: previous rebase directory .git/rebase-apply still exists but mbox given. === using patch(1) to apply patch ./v4-0004-Temporary-hack-to-unbreak-partitionwise-join-cont.patch === patching file src/backend/optimizer/plan/planner.c patching file src/test/regress/expected/partition_join.out patching file src/test/regress/expected/subselect.out [cf/6184 fa4b245222d] Temporary hack to unbreak partitionwise join control. Author: Robert Haas Date: Wed Oct 29 15:17:46 2025 -0400 3 files changed, 91 insertions(+), 126 deletions(-) === using 'git am' to apply patch ./v4-0005-Allow-for-plugin-control-over-path-generation-str.patch === fatal: previous rebase directory .git/rebase-apply still exists but mbox given. === using patch(1) to apply patch ./v4-0005-Allow-for-plugin-control-over-path-generation-str.patch === patching file src/backend/optimizer/path/allpaths.c patching file src/backend/optimizer/path/costsize.c Hunk #15 succeeded at 1373 (offset 1 line). Hunk #16 succeeded at 1452 with fuzz 2 (offset 16 lines). Hunk #17 succeeded at 1484 (offset 16 lines). Hunk #18 succeeded at 1515 (offset 16 lines). Hunk #19 succeeded at 1569 (offset 16 lines). Hunk #20 succeeded at 1610 (offset 16 lines). Hunk #21 succeeded at 1635 (offset 16 lines). Hunk #22 succeeded at 1671 (offset 16 lines). Hunk #23 succeeded at 1694 (offset 16 lines). Hunk #24 succeeded at 1723 (offset 16 lines). Hunk #25 succeeded at 1749 (offset 16 lines). Hunk #26 succeeded at 1775 (offset 16 lines). Hunk #27 succeeded at 1795 (offset 16 lines). Hunk #28 succeeded at 1817 (offset 16 lines). Hunk #29 succeeded at 1837 (offset 16 lines). Hunk #30 succeeded at 1856 (offset 16 lines). Hunk #31 succeeded at 1877 (offset 16 lines). Hunk #32 succeeded at 1900 (offset 16 lines). Hunk #33 succeeded at 2173 (offset 16 lines). Hunk #34 succeeded at 2215 (offset 16 lines). Hunk #35 succeeded at 2310 (offset 16 lines). Hunk #36 succeeded at 2528 (offset 16 lines). Hunk #37 succeeded at 2560 (offset 16 lines). Hunk #38 succeeded at 2581 (offset 16 lines). Hunk #39 succeeded at 2590 (offset 16 lines). Hunk #40 succeeded at 2624 (offset 16 lines). Hunk #41 succeeded at 3376 (offset 16 lines). Hunk #42 succeeded at 3390 (offset 16 lines). Hunk #43 succeeded at 3790 (offset 16 lines). Hunk #44 succeeded at 3981 (offset 16 lines). Hunk #45 succeeded at 4111 (offset 16 lines). Hunk #46 succeeded at 4132 (offset 16 lines). Hunk #47 succeeded at 4145 (offset 16 lines). Hunk #48 succeeded at 4157 (offset 16 lines). Hunk #49 succeeded at 4317 (offset 16 lines). patching file src/backend/optimizer/path/indxpath.c patching file src/backend/optimizer/path/joinpath.c patching file src/backend/optimizer/path/tidpath.c Hunk #1 succeeded at 499 (offset -1 lines). Hunk #2 succeeded at 533 (offset -1 lines). patching file src/backend/optimizer/plan/createplan.c patching file src/backend/optimizer/plan/planner.c Hunk #2 succeeded at 4001 with fuzz 1. patching file src/backend/optimizer/util/pathnode.c Hunk #1 succeeded at 1659 (offset 1 line). Hunk #2 succeeded at 1678 (offset 1 line). Hunk #3 succeeded at 1731 (offset 1 line). Hunk #4 succeeded at 3973 (offset 1 line). patching file src/backend/optimizer/util/plancat.c patching file src/backend/optimizer/util/relnode.c patching file src/include/nodes/pathnodes.h Hunk #5 succeeded at 3584 (offset 1 line). Hunk #6 succeeded at 3594 (offset 1 line). patching file src/include/optimizer/cost.h patching file src/include/optimizer/pathnode.h Hunk #2 succeeded at 93 (offset 1 line). patching file src/include/optimizer/paths.h [cf/6184 bac6b77edbb] Allow for plugin control over path generation strategies. Author: Robert Haas Date: Fri Oct 24 15:11:47 2025 -0400 14 files changed, 454 insertions(+), 98 deletions(-) === using 'git am' to apply patch ./v4-0006-WIP-Add-pg_plan_advice-contrib-module.patch === fatal: previous rebase directory .git/rebase-apply still exists but mbox given. === using patch(1) to apply patch ./v4-0006-WIP-Add-pg_plan_advice-contrib-module.patch === patching file contrib/Makefile patching file contrib/meson.build patching file contrib/pg_plan_advice/.gitignore patching file contrib/pg_plan_advice/Makefile patching file contrib/pg_plan_advice/README patching file contrib/pg_plan_advice/expected/gather.out patching file contrib/pg_plan_advice/expected/join_order.out patching file contrib/pg_plan_advice/expected/join_strategy.out patching file contrib/pg_plan_advice/expected/local_collector.out patching file contrib/pg_plan_advice/expected/partitionwise.out patching file contrib/pg_plan_advice/expected/scan.out patching file contrib/pg_plan_advice/expected/syntax.out patching file contrib/pg_plan_advice/meson.build patching file contrib/pg_plan_advice/pg_plan_advice--1.0.sql patching file contrib/pg_plan_advice/pg_plan_advice.c patching file contrib/pg_plan_advice/pg_plan_advice.control patching file contrib/pg_plan_advice/pg_plan_advice.h patching file contrib/pg_plan_advice/pgpa_ast.c patching file contrib/pg_plan_advice/pgpa_ast.h patching file contrib/pg_plan_advice/pgpa_collector.c patching file contrib/pg_plan_advice/pgpa_collector.h patching file contrib/pg_plan_advice/pgpa_identifier.c patching file contrib/pg_plan_advice/pgpa_identifier.h patching file contrib/pg_plan_advice/pgpa_join.c patching file contrib/pg_plan_advice/pgpa_join.h patching file contrib/pg_plan_advice/pgpa_output.c patching file contrib/pg_plan_advice/pgpa_output.h patching file contrib/pg_plan_advice/pgpa_parser.y patching file contrib/pg_plan_advice/pgpa_planner.c patching file contrib/pg_plan_advice/pgpa_planner.h patching file contrib/pg_plan_advice/pgpa_scan.c patching file contrib/pg_plan_advice/pgpa_scan.h patching file contrib/pg_plan_advice/pgpa_scanner.l patching file contrib/pg_plan_advice/pgpa_trove.c patching file contrib/pg_plan_advice/pgpa_trove.h patching file contrib/pg_plan_advice/pgpa_walker.c patching file contrib/pg_plan_advice/pgpa_walker.h patching file contrib/pg_plan_advice/sql/gather.sql patching file contrib/pg_plan_advice/sql/join_order.sql patching file contrib/pg_plan_advice/sql/join_strategy.sql patching file contrib/pg_plan_advice/sql/local_collector.sql patching file contrib/pg_plan_advice/sql/partitionwise.sql patching file contrib/pg_plan_advice/sql/scan.sql patching file contrib/pg_plan_advice/sql/syntax.sql patching file contrib/pg_plan_advice/t/001_regress.pl patching file src/tools/pgindent/typedefs.list Hunk #1 succeeded at 3943 (offset 14 lines). [cf/6184 fbdfd3b472d] WIP: Add pg_plan_advice contrib module. Author: Robert Haas Date: Tue Nov 4 14:45:31 2025 -0500 46 files changed, 11226 insertions(+) create mode 100644 contrib/pg_plan_advice/.gitignore create mode 100644 contrib/pg_plan_advice/Makefile create mode 100644 contrib/pg_plan_advice/README create mode 100644 contrib/pg_plan_advice/expected/gather.out create mode 100644 contrib/pg_plan_advice/expected/join_order.out create mode 100644 contrib/pg_plan_advice/expected/join_strategy.out create mode 100644 contrib/pg_plan_advice/expected/local_collector.out create mode 100644 contrib/pg_plan_advice/expected/partitionwise.out create mode 100644 contrib/pg_plan_advice/expected/scan.out create mode 100644 contrib/pg_plan_advice/expected/syntax.out create mode 100644 contrib/pg_plan_advice/meson.build create mode 100644 contrib/pg_plan_advice/pg_plan_advice--1.0.sql create mode 100644 contrib/pg_plan_advice/pg_plan_advice.c create mode 100644 contrib/pg_plan_advice/pg_plan_advice.control create mode 100644 contrib/pg_plan_advice/pg_plan_advice.h create mode 100644 contrib/pg_plan_advice/pgpa_ast.c create mode 100644 contrib/pg_plan_advice/pgpa_ast.h create mode 100644 contrib/pg_plan_advice/pgpa_collector.c create mode 100644 contrib/pg_plan_advice/pgpa_collector.h create mode 100644 contrib/pg_plan_advice/pgpa_identifier.c create mode 100644 contrib/pg_plan_advice/pgpa_identifier.h create mode 100644 contrib/pg_plan_advice/pgpa_join.c create mode 100644 contrib/pg_plan_advice/pgpa_join.h create mode 100644 contrib/pg_plan_advice/pgpa_output.c create mode 100644 contrib/pg_plan_advice/pgpa_output.h create mode 100644 contrib/pg_plan_advice/pgpa_parser.y create mode 100644 contrib/pg_plan_advice/pgpa_planner.c create mode 100644 contrib/pg_plan_advice/pgpa_planner.h create mode 100644 contrib/pg_plan_advice/pgpa_scan.c create mode 100644 contrib/pg_plan_advice/pgpa_scan.h create mode 100644 contrib/pg_plan_advice/pgpa_scanner.l create mode 100644 contrib/pg_plan_advice/pgpa_trove.c create mode 100644 contrib/pg_plan_advice/pgpa_trove.h create mode 100644 contrib/pg_plan_advice/pgpa_walker.c create mode 100644 contrib/pg_plan_advice/pgpa_walker.h create mode 100644 contrib/pg_plan_advice/sql/gather.sql create mode 100644 contrib/pg_plan_advice/sql/join_order.sql create mode 100644 contrib/pg_plan_advice/sql/join_strategy.sql create mode 100644 contrib/pg_plan_advice/sql/local_collector.sql create mode 100644 contrib/pg_plan_advice/sql/partitionwise.sql create mode 100644 contrib/pg_plan_advice/sql/scan.sql create mode 100644 contrib/pg_plan_advice/sql/syntax.sql create mode 100644 contrib/pg_plan_advice/t/001_regress.pl