Re: On disable_cost
Richard Guo <guofenglinux@gmail.com>
From: Richard Guo <guofenglinux@gmail.com>
To: Alexander Lakhin <exclusion@gmail.com>
Cc: Robert Haas <robertmhaas@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>, David Rowley <dgrowleyml@gmail.com>, Heikki Linnakangas <hlinnaka@iki.fi>,
Peter Geoghegan <pg@bowt.ie>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2024-09-06T09:27:22Z
Lists: pgsql-hackers
On Fri, Sep 6, 2024 at 5:00 PM Alexander Lakhin <exclusion@gmail.com> wrote:
> static void
> label_sort_with_costsize(PlannerInfo *root, Sort *plan, double limit_tuples)
> {
> ...
> cost_sort(&sort_path, root, NIL,
> lefttree->total_cost,
> plan->plan.disabled_nodes,
> lefttree->plan_rows,
> lefttree->plan_width,
> 0.0,
> work_mem,
> limit_tuples);
>
> Given the cost_sort() declaration:
> void
> cost_sort(Path *path, PlannerInfo *root,
> List *pathkeys, int input_disabled_nodes,
> Cost input_cost, double tuples, int width,
> Cost comparison_cost, int sort_mem,
> double limit_tuples)
>
> Aren't the input_disabled_nodes and input_cost arguments swapped in the
> above call?
Nice catch! I checked other callers to cost_sort, and they are all
good.
(I'm a little surprised that this does not cause any plan diffs in the
regression tests.)
Thanks
Richard
Commits
-
Doc: add detail about EXPLAIN's "Disabled" property
- 84b8fccbe5c2 18.0 landed
-
Adjust EXPLAIN's output for disabled nodes
- 161320b4b960 18.0 landed
-
Fix order of parameters in a cost_sort call
- 87b6c3c0b703 18.0 landed
-
Show number of disabled nodes in EXPLAIN ANALYZE output.
- c01743aa4866 18.0 landed
-
Treat number of disabled nodes in a path as a separate cost metric.
- e22253467942 18.0 landed
-
Remove grotty use of disable_cost for TID scan plans.
- e4326fbc60c4 18.0 landed