Changeset: 3c24051e28fa for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3c24051e28fa
Modified Files:
sql/server/rel_optimizer.c
Branch: Jul2015
Log Message:
fixed bug 3879, after pushing down project (through the union), we merge
multiple projects directly.
diffs (19 lines):
diff --git a/sql/server/rel_optimizer.c b/sql/server/rel_optimizer.c
--- a/sql/server/rel_optimizer.c
+++ b/sql/server/rel_optimizer.c
@@ -7646,8 +7646,13 @@ static sql_rel *
if (gp.cnt[op_select] || gp.cnt[op_join])
rel = rewrite(sql, rel, &rel_use_index, &changes);
- if (gp.cnt[op_project])
- rel = rewrite_topdown(sql, rel, &rel_push_project_down_union,
&changes);
+ if (gp.cnt[op_project]) {
+ int lchanges = 0;
+ rel = rewrite_topdown(sql, rel, &rel_push_project_down_union,
&lchanges);
+ if (lchanges)
+ rel = rewrite(sql, rel, &rel_merge_projects, &lchanges);
+ changes += lchanges;
+ }
/* Remove unused expressions */
if (level <= 0)
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list