Changeset: d50f8818401a for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/d50f8818401a
Modified Files:
        sql/backends/monet5/sql.c
        sql/server/rel_optimizer.c
Branch: Jul2021
Log Message:

Merged with Oct2020


diffs (22 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
@@ -3944,10 +3944,14 @@ rel_merge_project_rse(visitor *v, sql_re
                                        sql_subtype *t1 = exp_subtype(e1), *t3 
= exp_subtype(e3), super;
 
                                        supertype(&super, t1, t3); /* e1 and e2 
must have the same type */
-                                       if ((e1 = exp_check_type(v->sql, 
&super, rel, e1, type_equal)) &&
-                                               (e2 = exp_check_type(v->sql, 
&super, rel, e2, type_equal)) &&
-                                               (e3 = exp_check_type(v->sql, 
&super, rel, e3, type_equal)) &&
-                                               (ne = exp_compare2(v->sql->sa, 
e1, e2, e3, compare_funcs2range(lf->func->base.name, rf->func->base.name)))) {
+                                       if (!(e1 = exp_check_type(v->sql, 
&super, rel, e1, type_equal)) ||
+                                               !(e2 = exp_check_type(v->sql, 
&super, rel, e2, type_equal)) ||
+                                               !(e3 = exp_check_type(v->sql, 
&super, rel, e3, type_equal))) {
+                                                       v->sql->session->status 
= 0;
+                                                       v->sql->errstr[0] = 0;
+                                                       return e;
+                                               }
+                                       if ((ne = exp_compare2(v->sql->sa, e1, 
e2, e3, compare_funcs2range(lf->func->base.name, rf->func->base.name)))) {
                                                if (exp_name(e))
                                                        
exp_prop_alias(v->sql->sa, ne, e);
                                                e = ne;
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to