Fix GEQO optimizer to work correctly with new outer-join-capable
Tom Lane <tgl@sss.pgh.pa.us>
Fix GEQO optimizer to work correctly with new outer-join-capable query representation. Note that GEQO_RELS setting is now interpreted as the number of top-level items in the FROM list, not necessarily the number of relations in the query. This seems appropriate since we are only doing join-path searching over the top-level items.
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/optimizer/geqo/geqo_eval.c | modified | +29 −21 |
| src/backend/optimizer/geqo/geqo_main.c | modified | +9 −11 |
| src/backend/optimizer/geqo/geqo_pool.c | modified | +7 −7 |
| src/backend/optimizer/path/allpaths.c | modified | +2 −2 |
| src/include/optimizer/geqo.h | modified | +7 −5 |
| src/include/optimizer/geqo_pool.h | modified | +3 −2 |