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

Reply via email to