Changeset: 555648f00102 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/555648f00102
Modified Files:
        sql/server/rel_select.c
Branch: Jul2021
Log Message:

More cleanup, here compare with false instead of doing sys.not call


diffs (26 lines):

diff --git a/sql/server/rel_select.c b/sql/server/rel_select.c
--- a/sql/server/rel_select.c
+++ b/sql/server/rel_select.c
@@ -2695,13 +2695,18 @@ rel_logical_exp(sql_query *query, sql_re
                        sc->data.sym = negate_symbol_tree(sql, sc->data.sym);
                        return rel_logical_exp(query, rel, sc->data.sym, f);
                }
+               sql_rel *or = rel;
                sql_exp *le = rel_value_exp(query, &rel, sc->data.sym, 
f|sql_farg, ek);
 
-               if (!le)
+               if (le) {
+                       sql_subtype bt;
+
+                       sql_find_subtype(&bt, "boolean", 0, 0);
+                       le = exp_check_type(sql, &bt, rel, le, type_equal);
+               }
+               if (!le || or != rel)
                        return NULL;
-               if (!(le = rel_unop_(sql, rel, le, "sys", "not", card_value)))
-                       return NULL;
-               le = exp_compare(sql->sa, le, exp_atom_bool(sql->sa, 1), 
cmp_equal);
+               le = exp_compare(sql->sa, le, exp_atom_bool(sql->sa, 0), 
cmp_equal);
                return rel_select_push_exp_down(sql, rel, le, le->l, le->l, 
le->r, le->r, NULL, f);
        }
        case SQL_ATOM: {
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to