Changeset: 441f7b0ee5dd for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/441f7b0ee5dd
Modified Files:
        sql/server/rel_optimizer.c
        sql/test/SQLancer/Tests/sqlancer14.test
Branch: Jul2021
Log Message:

My mistake, don't split list of values. If they get split, then they cannot be 
bound in the same projection at the moment


diffs (59 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
@@ -6124,9 +6124,6 @@ split_aggr_and_project(mvc *sql, list *a
                list_split_aggr_and_project(sql, aexps, e->l);
                return e;
        case e_atom:
-               if (e->f)
-                       list_split_aggr_and_project(sql, aexps, e->f);
-               return e;
        case e_column: /* constants and columns shouldn't be rewriten */
        case e_psm:
                return e;
@@ -7879,9 +7876,6 @@ split_exp(mvc *sql, sql_exp *e, sql_rel 
                }
                return e;
        case e_atom:
-               if (e->f)
-                       split_exps(sql, e->f, rel);
-               return e;
        case e_psm:
                return e;
        }
@@ -8000,9 +7994,6 @@ select_split_exp(mvc *sql, sql_exp *e, s
                }
                return e;
        case e_atom:
-               if (e->f)
-                       select_split_exp(sql, e->f, rel);
-               return e;
        case e_psm:
                return e;
        }
diff --git a/sql/test/SQLancer/Tests/sqlancer14.test 
b/sql/test/SQLancer/Tests/sqlancer14.test
--- a/sql/test/SQLancer/Tests/sqlancer14.test
+++ b/sql/test/SQLancer/Tests/sqlancer14.test
@@ -902,3 +902,22 @@ 46
 
 statement ok
 ROLLBACK
+
+statement ok
+START TRANSACTION
+
+statement ok
+CREATE TABLE "sys"."t0" ("c0" BINARY LARGE OBJECT NOT NULL,"c2" BIGINT NOT 
NULL,"c3" CHAR(423))
+
+statement ok
+CREATE TABLE "sys"."t1" ("c0" TINYINT)
+
+statement ok
+CREATE TABLE "sys"."t2" ("c0" TIME,"c3" BIGINT)
+
+statement ok rowcount 2
+insert into t0(c0, c2, c3) values(blob 'C0', 3, case 8 when 0.8 then 'sd' else 
cast(uuid '4C0cA58A-f54F-fc4F-C0c9-6909aDd7Ed52' > all(select all uuid 
'cDbE28DB-FDcc-eeCa-E089-feD9D8CA7FC6'
+from t1 as l3t1, t2 as l3t2 where false) as string(922)) end), (blob 
'Ba35f6f1', + (dayofyear(timestamp '1970-01-01 01:00:00')), '')
+
+statement ok
+ROLLBACK
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to