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

Reply via email to