Changeset: 2bb69b5569ff for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/2bb69b5569ff
Modified Files:
sql/server/rel_unnest.c
sql/test/BugTracker-2021/Tests/batappend-undefined.Bug-7130.test
Branch: default
Log Message:
fix projection around semijoin
diffs (32 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
@@ -4080,12 +4080,10 @@ rewrite_rel(visitor *v, sql_rel *rel)
assert(is_project(nr->op));
if (!rel_is_ref(nr))
nr = nr->l;
- sql_rel *n = rel_project(v->sql->sa, nr->l, nr->exps);
- nr->l = n;
- nr->r = ir;
- nr->exps = exps;
- nr->op = op_semi;
- set_dependent(nr);
+ sql_rel *s = rel_crossproduct(v->sql->sa, nr->l, ir,
op_semi);
+ s->exps = exps;
+ set_dependent(s);
+ nr->l = s;
e = exp_rel_update_exp(v->sql, e, false);
exp_reset_props(nr, e, true);
v->changes++;
diff --git a/sql/test/BugTracker-2021/Tests/batappend-undefined.Bug-7130.test
b/sql/test/BugTracker-2021/Tests/batappend-undefined.Bug-7130.test
--- a/sql/test/BugTracker-2021/Tests/batappend-undefined.Bug-7130.test
+++ b/sql/test/BugTracker-2021/Tests/batappend-undefined.Bug-7130.test
@@ -60,7 +60,7 @@ select (select (select 1 where subq_0.c0
statement error GDK reported error: BATsubcross: more than one match
select 1 from t_qh left outer join (select 2) as subq_0(c1) on EXISTS(select 1
from t_qh as ref_6 where 2 = (select 1 from t_qh where ref_6.c_f = 1 or
subq_0.c1 is NULL))
-statement error GDK reported error: mergejoin: more than one match
+statement error GDK reported error: BATsubcross: more than one match
select EXISTS(select 1 from t_qh left outer join (select cast(2 as INTEGER)
from t_qh) as subq_0(c1) on true <> EXISTS(select 1 from t_qh as ref_6 where 2 <
(select subq_0.c1 as c0 from t_qh where (1 <> ref_6.c_f) or (subq_0.c1 is
NULL)))) from (select 30 from t_qh) as subq_0(c1)
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]