Finish refactoring make_foo() functions in createplan.c.
This patch removes some redundant cost calculations that I left for later cleanup in commit 3fc6e2d7. There's now a uniform policy that the make_foo() convenience functions don't do any cost calculations. Most of their callers copy costs from the source Path node, and for those that don't, the calculation in the make_foo() function wasn't necessarily right anyhow. (make_result() was particularly a mess, as it was serving multiple callers using cost calcs designed for only the first one or two that had ever existed.) Aside from saving a few cycles, this ensures that what EXPLAIN prints matches the costs we used for planning purposes. It does not change any planner decisions, since the decisions are already made.
Showing
This diff is collapsed.
Please register or sign in to comment