Changeset: 3a9ca5c752f0 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3a9ca5c752f0 Modified Files: sql/server/rel_unnest.c sql/test/subquery/Tests/subquery4.stable.out Branch: Jun2020 Log Message:
small fix for exists on consts/single row's (rewrite too true) diffs (29 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 @@ -2600,8 +2600,12 @@ rewrite_exists(mvc *sql, sql_rel *rel, s sql_exp *ne = NULL, *ie = l->h->data, *le; sql_rel *sq = NULL; - if (!exp_is_rel(ie)) /* already fine */ + if (!exp_is_rel(ie)) { /* exists over a constant or a single value */ + const char *rname = exp_relname(e), *name = exp_name(e); + e = exp_atom_bool(sql->sa, is_exists(sf)?1:0); + exp_setname(sql->sa, e, rname, name); return e; + } sq = exp_rel_get_rel(sql->sa, ie); /* get subquery */ diff --git a/sql/test/subquery/Tests/subquery4.stable.out b/sql/test/subquery/Tests/subquery4.stable.out --- a/sql/test/subquery/Tests/subquery4.stable.out +++ b/sql/test/subquery/Tests/subquery4.stable.out @@ -213,7 +213,7 @@ stdout of test 'subquery4` in directory % 2 # length [ 36 ] #SELECT NOT EXISTS(SELECT i1.i) from integers i1; -% sys.%2 # table_name +% .%2 # table_name % %2 # name % boolean # type % 5 # length _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list