Changeset: 0d79e48d96ea for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/0d79e48d96ea
Modified Files:
sql/server/rel_select.c
Branch: Jul2021
Log Message:
Be defensive and allow input relation to change
diffs (24 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,16 +2695,11 @@ 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) {
- sql_subtype bt;
-
- sql_find_subtype(&bt, "boolean", 0, 0);
- le = exp_check_type(sql, &bt, rel, le, type_equal);
- }
- if (!le || or != rel)
+ sql_subtype bt;
+
+ sql_find_subtype(&bt, "boolean", 0, 0);
+ if (!le || !(le = exp_check_type(sql, &bt, rel, le,
type_equal)))
return NULL;
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);
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list