Changeset: ac68d2a866de for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=ac68d2a866de Modified Files: sql/backends/monet5/rel_bin.c sql/server/rel_sequence.c Branch: default Log Message:
fixes for bug 6657 diffs (30 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 @@ -2976,6 +2976,11 @@ rel2bin_select(backend *be, sql_rel *rel if (s->nrcols == 0){ if (!predicate && sub) predicate = stmt_const(be, bin_first_column(be, sub), stmt_bool(be, 1)); + if (e->type != e_cmp) { + sql_subtype *bt = sql_bind_localtype("bit"); + + s = stmt_convert(be, s, exp_subtype(e), bt); + } sel = stmt_uselect(be, predicate, s, cmp_equal, sel, 0); } else if (e->type != e_cmp) { sel = stmt_uselect(be, s, stmt_bool(be, 1), cmp_equal, NULL, 0); diff --git a/sql/server/rel_sequence.c b/sql/server/rel_sequence.c --- a/sql/server/rel_sequence.c +++ b/sql/server/rel_sequence.c @@ -261,6 +261,11 @@ rel_alter_seq( val = rel_value_exp2(query, &r, start_list->h->next->data.sym, sql_sel, ek, &is_last); if (!val || !(val = rel_check_type(sql, lng_t, val, type_equal))) return NULL; + if (val && r && r->op == op_project) { + exp_label(sql->sa, val, ++sql->label); + val = rel_project_add_exp(sql, r, val); + val = exp_ref(sql->sa, val); + } } else if (start_type == 2) { assert (start_list->h->next->type == type_lng); val = exp_atom_lng(sql->sa, start_list->h->next->data.l_val); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list