Changeset: e9c19dd387e7 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e9c19dd387e7 Modified Files: sql/backends/monet5/rel_bin.c sql/server/rel_optimizer.c sql/server/rel_updates.c Branch: Jul2017 Log Message:
fixed bug 6348, only rename non constant expressions fixed bug 6352, when pushing projects up, we should include subqueries. diffs (37 lines): diff --git a/sql/backends/monet5/rel_bin.c b/sql/backends/monet5/rel_bin.c --- a/sql/backends/monet5/rel_bin.c +++ b/sql/backends/monet5/rel_bin.c @@ -271,6 +271,9 @@ value_list(backend *be, list *vals, stmt sql_exp *e = n->data; stmt *i = exp_bin(be, e, left, NULL, NULL, NULL, NULL, sel); + if (!i) + return NULL; + if (list_length(vals) == 1) return i; 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 @@ -5500,7 +5500,7 @@ rel_push_project_up(int *changes, mvc *s } } } else if (is_join(rel->op)) { - list *r_exps = rel_projections(sql, r, NULL, 1, 1); + list *r_exps = rel_projections(sql, r, NULL, 1, 2); list_merge(exps, r_exps, (fdup)NULL); } diff --git a/sql/server/rel_updates.c b/sql/server/rel_updates.c --- a/sql/server/rel_updates.c +++ b/sql/server/rel_updates.c @@ -498,7 +498,7 @@ insert_into(mvc *sql, dlist *qname, dlis inner = rel_crossproduct(sql->sa, inner, r, op_join); else if (r) inner = r; - if (inner && !ins->name) { + if (inner && !ins->name && !is_atom(ins->type)) { exp_label(sql->sa, ins, ++sql->label); ins = exp_column(sql->sa, exp_relname(ins), exp_name(ins), exp_subtype(ins), ins->card, has_nil(ins), is_intern(ins)); } _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list