Revise cost_qual_eval() to compute both startup (one-time) and per-tuple
Tom Lane <tgl@sss.pgh.pa.us>
Revise cost_qual_eval() to compute both startup (one-time) and per-tuple costs for expression evaluation, not only per-tuple cost as before. This extension is needed in order to deal realistically with hashed or materialized sub-selects.
Files
| Path | Change | +/− |
|---|---|---|
| doc/src/sgml/indexcost.sgml | modified | +4 −3 |
| src/backend/optimizer/path/costsize.c | modified | +131 −53 |
| src/backend/optimizer/plan/initsplan.c | modified | +2 −2 |
| src/backend/optimizer/prep/prepunion.c | modified | +2 −2 |
| src/backend/optimizer/util/relnode.c | modified | +5 −3 |
| src/backend/utils/adt/selfuncs.c | modified | +5 −3 |
| src/include/nodes/relation.h | modified | +13 −3 |
| src/include/optimizer/cost.h | modified | +2 −2 |