-
- Downloads
Teach planner how to rearrange join order for some classes of OUTER JOIN.
Per my recent proposal. I ended up basing the implementation on the existing mechanism for enforcing valid join orders of IN joins --- the rules for valid outer-join orders are somewhat similar.
Showing
- doc/src/sgml/config.sgml 10 additions, 33 deletionsdoc/src/sgml/config.sgml
- doc/src/sgml/perform.sgml 28 additions, 13 deletionsdoc/src/sgml/perform.sgml
- src/backend/nodes/copyfuncs.c 20 additions, 1 deletionsrc/backend/nodes/copyfuncs.c
- src/backend/nodes/equalfuncs.c 15 additions, 1 deletionsrc/backend/nodes/equalfuncs.c
- src/backend/nodes/outfuncs.c 16 additions, 2 deletionssrc/backend/nodes/outfuncs.c
- src/backend/optimizer/README 95 additions, 24 deletionssrc/backend/optimizer/README
- src/backend/optimizer/geqo/geqo_eval.c 19 additions, 6 deletionssrc/backend/optimizer/geqo/geqo_eval.c
- src/backend/optimizer/path/allpaths.c 41 additions, 21 deletionssrc/backend/optimizer/path/allpaths.c
- src/backend/optimizer/path/joinrels.c 190 additions, 158 deletionssrc/backend/optimizer/path/joinrels.c
- src/backend/optimizer/plan/initsplan.c 314 additions, 128 deletionssrc/backend/optimizer/plan/initsplan.c
- src/backend/optimizer/plan/planmain.c 7 additions, 4 deletionssrc/backend/optimizer/plan/planmain.c
- src/backend/optimizer/plan/planner.c 3 additions, 12 deletionssrc/backend/optimizer/plan/planner.c
- src/backend/optimizer/prep/prepjointree.c 10 additions, 263 deletionssrc/backend/optimizer/prep/prepjointree.c
- src/backend/optimizer/util/clauses.c 131 additions, 3 deletionssrc/backend/optimizer/util/clauses.c
- src/backend/optimizer/util/relnode.c 1 addition, 3 deletionssrc/backend/optimizer/util/relnode.c
- src/backend/utils/misc/guc.c 3 additions, 3 deletionssrc/backend/utils/misc/guc.c
- src/include/nodes/nodes.h 2 additions, 1 deletionsrc/include/nodes/nodes.h
- src/include/nodes/primnodes.h 2 additions, 7 deletionssrc/include/nodes/primnodes.h
- src/include/nodes/relation.h 37 additions, 10 deletionssrc/include/nodes/relation.h
- src/include/optimizer/clauses.h 2 additions, 1 deletionsrc/include/optimizer/clauses.h
Loading
Please register or sign in to comment