[prev] 20 [next]

Join-tree Generation

make_rel_from_joinlist() arranges path generation
  • switches between two possible path tree generators
  • path tree generators finally return best cost path
Standard path tree generator (standard_join_search()):
  • "exhaustively" generates join trees (a la System R)
  • starts with 2-way joins, finds best combination
  • then adds extra table to give 3-table join, etc.
Code in:   backend/optimizer/path/{allpaths.c,joinrels.c}