Changeset: 9c05fb077c54 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/9c05fb077c54
Modified Files:
        sql/server/rel_optimize_proj.c
        sql/server/rel_optimize_sel.c
Branch: balanced_union
Log Message:

add more munion optimization.


diffs (24 lines):

diff --git a/sql/server/rel_optimize_proj.c b/sql/server/rel_optimize_proj.c
--- a/sql/server/rel_optimize_proj.c
+++ b/sql/server/rel_optimize_proj.c
@@ -2984,7 +2984,7 @@ run_optimizer
 bind_optimize_projections(visitor *v, global_props *gp)
 {
        int flag = v->sql->sql_optimizer;
-       return gp->opt_level == 1 && (gp->cnt[op_groupby] || 
gp->cnt[op_project] || gp->cnt[op_union]
+       return gp->opt_level == 1 && (gp->cnt[op_groupby] || 
gp->cnt[op_project] || gp->cnt[op_union] || gp->cnt[op_munion]
                   || gp->cnt[op_inter] || gp->cnt[op_except]) && (flag & 
optimize_projections) ? rel_optimize_projections : NULL;
 }
 
diff --git a/sql/server/rel_optimize_sel.c b/sql/server/rel_optimize_sel.c
--- a/sql/server/rel_optimize_sel.c
+++ b/sql/server/rel_optimize_sel.c
@@ -2242,7 +2242,7 @@ order_joins(visitor *v, list *rels, list
 static int
 rel_neg_in_size(sql_rel *r)
 {
-       if (is_union(r->op) && r->nrcols == 0)
+       if ((is_union(r->op) /*|| is_munion(r->op)*/) && r->nrcols == 0)
                return -1 + rel_neg_in_size(r->l);
        if (is_project(r->op) && r->nrcols == 0)
                return -1;
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to