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

Reply via email to