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 -- checkin-list@monetdb.org To unsubscribe send an email to checkin-list-le...@monetdb.org