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]