Changeset: 93e622a50e22 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/93e622a50e22 Modified Files: sql/backends/monet5/rel_bin.c Branch: pushcands Log Message:
fixed problem in exp_bin_or, ie make sure we don't project on single values diffs (21 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 @@ -626,7 +626,7 @@ exp_bin_or(backend *be, sql_exp *e, rel_ } else if (sel1 && (sel1->nrcols == 0 || s->nrcols == 0)) { stmt *predicate = bin_find_smallest_column(be, left); - predicate = stmt_const(be, predicate, sel1, stmt_bool(be, 1)); + predicate = stmt_const(be, predicate, sel1->nrcols?sel1:NULL, stmt_bool(be, 1)); if (s->nrcols == 0) s = stmt_uselect(be, predicate, s, cmp_equal, sel1, anti, is_semantics(c)); else @@ -660,7 +660,7 @@ exp_bin_or(backend *be, sql_exp *e, rel_ } else if (sel2 && (sel2->nrcols == 0 || s->nrcols == 0)) { stmt *predicate = bin_find_smallest_column(be, left); - predicate = stmt_const(be, predicate, sel2, stmt_bool(be, 1)); + predicate = stmt_const(be, predicate, sel2->nrcols?sel2:NULL, stmt_bool(be, 1)); if (s->nrcols == 0) s = stmt_uselect(be, predicate, s, cmp_equal, sel2, anti, 0); else _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list