diff options
author | Vadim B. Mikheev | 1997-06-02 11:14:40 +0000 |
---|---|---|
committer | Vadim B. Mikheev | 1997-06-02 11:14:40 +0000 |
commit | 05404562fb2b850e4202de9b3fe769c17fa43903 (patch) | |
tree | 73c106310c3c88810a09b07c26f1c2e4f8ad9e7a | |
parent | cda886fd06a1ab6c2d5ff42d442905e971327279 (diff) |
Use GEQO if _use_geqo_ is TRUE and # of relations is >= _use_geqo_rels_
(both are settable via SET geqo TO ...).
-rw-r--r-- | src/backend/optimizer/path/allpaths.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/backend/optimizer/path/allpaths.c b/src/backend/optimizer/path/allpaths.c index ac1f2b414d..6469e7ecb6 100644 --- a/src/backend/optimizer/path/allpaths.c +++ b/src/backend/optimizer/path/allpaths.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/optimizer/path/allpaths.c,v 1.7 1997/06/01 02:55:44 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/optimizer/path/allpaths.c,v 1.8 1997/06/02 11:14:40 vadim Exp $ * *------------------------------------------------------------------------- */ @@ -38,6 +38,7 @@ bool _use_geqo_ = true; #else bool _use_geqo_ = false; #endif +int32 _use_geqo_rels_ = GEQO_RELS; static void find_rel_paths(Query *root, List *rels); @@ -173,7 +174,7 @@ find_join_paths(Query *root, List *outer_rels, int levels_left) * <[email protected]> * *******************************************/ - if ( (_use_geqo_) || length(root->base_relation_list_) >= GEQO_RELS ) + if ( (_use_geqo_) && length(root->base_relation_list_) >= _use_geqo_rels_ ) return lcons(geqo(root), NIL); /* returns *one* Rel, so lcons it */ /******************************************* |