Changeset: 386f73ba1ded for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=386f73ba1ded Modified Files: sql/server/rel_optimizer.c sql/server/sql_atom.c Branch: default Log Message:
Merged with oscar diffs (43 lines): diff --git a/sql/server/rel_optimizer.c b/sql/server/rel_optimizer.c --- a/sql/server/rel_optimizer.c +++ b/sql/server/rel_optimizer.c @@ -5283,7 +5283,7 @@ rel_remove_empty_join(visitor *v, sql_re static bool find_projection_for_join2semi(sql_rel *rel) { - if (is_simple_project(rel->op) || is_groupby(rel->op)) { + if (is_project(rel->op) && !is_union(rel->op)) { if (rel->card < CARD_AGGR) /* const or groupby without group by exps */ return true; diff --git a/sql/server/sql_atom.c b/sql/server/sql_atom.c --- a/sql/server/sql_atom.c +++ b/sql/server/sql_atom.c @@ -318,6 +318,7 @@ atom_general(sql_allocator *sa, sql_subt if (res < 0 || !p || ATOMcmp(type, p, ATOMnilptr(type)) == 0) { if (p) GDKfree(p); + GDKclrerr(); return NULL; } VALset(&a->data, a->data.vtype, p); @@ -1229,8 +1230,10 @@ atom_cast(sql_allocator *sa, atom *a, sq p = &(a->data.val.dval); else p = &(a->data.val.fval); - if ((res = ATOMfromstr(tpe, &p, &len, s, false)) < 0) + if ((res = ATOMfromstr(tpe, &p, &len, s, false)) < 0) { + GDKclrerr(); return 0; + } } else { return 0; } @@ -1251,6 +1254,7 @@ atom_cast(sql_allocator *sa, atom *a, sq ATOMcmp(type, p, ATOMnilptr(type)) == 0) { GDKfree(p); a->data.len = strlen(a->data.val.sval); + GDKclrerr(); return 0; } a->tpe = *tp; _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list