Re: make add_paths_to_append_rel aware of startup cost

Thomas Munro <thomas.munro@gmail.com>

From: Thomas Munro <thomas.munro@gmail.com>
To: David Rowley <dgrowleyml@gmail.com>
Cc: Andy Fan <zhihui.fan1213@gmail.com>, pgsql-hackers <pgsql-hackers@postgresql.org>, Zhang Mingli <zmlpostgres@gmail.com>
Date: 2024-02-14T00:21:27Z
Lists: pgsql-hackers
On Thu, Oct 5, 2023 at 9:07 PM David Rowley <dgrowleyml@gmail.com> wrote:
> Thanks. Pushed.

FYI somehow this plan from a8a968a8212e flipped in this run:

=== dumping /home/bf/bf-build/mylodon/HEAD/pgsql.build/testrun/recovery/027_stream_regress/data/regression.diffs
===
diff -U3 /home/bf/bf-build/mylodon/HEAD/pgsql/src/test/regress/expected/union.out
/home/bf/bf-build/mylodon/HEAD/pgsql.build/testrun/recovery/027_stream_regress/data/results/union.out
--- /home/bf/bf-build/mylodon/HEAD/pgsql/src/test/regress/expected/union.out
2024-01-15 00:31:13.947555940 +0000
+++ /home/bf/bf-build/mylodon/HEAD/pgsql.build/testrun/recovery/027_stream_regress/data/results/union.out
2024-02-14 00:06:17.075584839 +0000
@@ -1447,9 +1447,9 @@
    ->  Append
          ->  Nested Loop
                Join Filter: (t1.tenthous = t2.tenthous)
-               ->  Seq Scan on tenk1 t1
+               ->  Seq Scan on tenk2 t2
                ->  Materialize
-                     ->  Seq Scan on tenk2 t2
+                     ->  Seq Scan on tenk1 t1
          ->  Result
 (8 rows)

https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=mylodon&dt=2024-02-14%2000%3A01%3A03



Commits

  1. Attempt to stabilize flapping regression test

  2. Consider cheap startup paths in add_paths_to_append_rel