Changeset: 8cfb572f3164 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/8cfb572f3164
Modified Files:
sql/server/rel_unnest.c
sql/test/mergetables/Tests/sqlsmith-exists2.test
Branch: default
Log Message:
rewrite_outer2inner_union has to run before rewrite_or_exp. This fixes sqlsmith
query
diffs (37 lines):
diff --git a/sql/server/rel_unnest.c b/sql/server/rel_unnest.c
--- a/sql/server/rel_unnest.c
+++ b/sql/server/rel_unnest.c
@@ -3634,13 +3634,13 @@ rel_unnest_simplify(visitor *v, sql_rel
if (rel)
rel = rewrite_simplify(v, rel);
if (rel)
- rel = rewrite_or_exp(v, rel);
- if (rel)
rel = rewrite_split_select_exps(v, rel); /* has to run before
rewrite_complex */
if (rel)
- rel = rewrite_aggregates(v, rel);
+ rel = rewrite_outer2inner_union(v, rel); /* has to run before
rewrite_or_exp */
if (rel)
- rel = rewrite_outer2inner_union(v, rel);
+ rel = rewrite_or_exp(v, rel);
+ if (rel)
+ rel = rewrite_aggregates(v, rel);
if (rel)
rel = rewrite_values(v, rel);
return rel;
diff --git a/sql/test/mergetables/Tests/sqlsmith-exists2.test
b/sql/test/mergetables/Tests/sqlsmith-exists2.test
--- a/sql/test/mergetables/Tests/sqlsmith-exists2.test
+++ b/sql/test/mergetables/Tests/sqlsmith-exists2.test
@@ -525,6 +525,12 @@ 14
14
51
+query I rowsort
+select 1 from tab0 right join (select 1) as subq_0
+on false or (tab0.col1 is null and exists (select 1))
+----
+1
+
query II rowsort
select
cast(coalesce(subq_1.c0,
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list