Changeset: df584735e3a3 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/df584735e3a3
Modified Files:
        sql/server/rel_select.c
        sql/test/BugTracker-2024/Tests/groupby-select1-Bug-7472.test
Branch: Dec2023
Log Message:

Don't do group by expression matching when the group by expression has freevars.
This solves bug #7472


diffs (23 lines):

diff --git a/sql/server/rel_select.c b/sql/server/rel_select.c
--- a/sql/server/rel_select.c
+++ b/sql/server/rel_select.c
@@ -4594,7 +4594,7 @@ rel_groupings(sql_query *query, sql_rel 
                                                if (e->type != e_column) { /* 
store group by expressions in the stack */
                                                        if 
(is_sql_group_totals(f))
                                                                return 
sql_error(sql, 02, SQLSTATE(42000) "GROUP BY: grouping expressions not possible 
with ROLLUP, CUBE and GROUPING SETS");
-                                                       if 
(!frame_push_groupby_expression(sql, grp, e))
+                                                       if (!exp_has_rel(e) && 
!frame_push_groupby_expression(sql, grp, e))
                                                                return NULL;
                                                }
                                                list_append(next_tuple, e);
diff --git a/sql/test/BugTracker-2024/Tests/groupby-select1-Bug-7472.test 
b/sql/test/BugTracker-2024/Tests/groupby-select1-Bug-7472.test
--- a/sql/test/BugTracker-2024/Tests/groupby-select1-Bug-7472.test
+++ b/sql/test/BugTracker-2024/Tests/groupby-select1-Bug-7472.test
@@ -3,7 +3,6 @@ SELECT ( WITH x AS ( SELECT 1 x ) SELECT
 ----
 NULL
 
-skipif knownfail
 query I nosort
 SELECT ( WITH x AS ( SELECT 1 x ) SELECT 1 FROM ( x NATURAL JOIN x ) WHERE x 
NOT IN ( SELECT CASE WHEN x THEN ( SELECT 1 ) END GROUP BY ( SELECT 1 ) ) )
 ----
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to