pgsql-server/src backend/optimizer/geqo/geqo_e ...

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql-server/src backend/optimizer/geqo/geqo_e ...
Date: 2002-12-16 21:30:30
Message-ID: 20021216213030.2D4C1476744@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

CVSROOT: /cvsroot
Module name: pgsql-server
Changes by: tgl(at)postgresql(dot)org 02/12/16 16:30:30

Modified files:
src/backend/optimizer/geqo: geqo_eval.c geqo_main.c geqo_misc.c
src/backend/optimizer/path: indxpath.c joinrels.c
src/include/optimizer: geqo.h paths.h

Log message:
Fix GEQO to work again in CVS tip, by being more careful about memory
allocation in best_inner_indexscan(). While at it, simplify GEQO's
interface to the main planner --- make_join_rel() offers exactly the
API it really wants, whereas calling make_rels_by_clause_joins() and
make_rels_by_clauseless_joins() required jumping through hoops.
Rewrite gimme_tree for clarity (sometimes iteration is much better than
recursion), and approximately halve GEQO's runtime by recognizing that
tours of the forms (a,b,c,d,...) and (b,a,c,d,...) are equivalent
because of symmetry in make_join_rel().

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2002-12-17 01:18:38 pgsql-server/src/backend nodes/list.c optimize ...
Previous Message Tom Lane 2002-12-16 19:08:25 pgsql-server/doc/src/sgml/ref alter_table.sgml ...