Changeset: 150ba22209cb for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/150ba22209cb
Modified Files:
sql/backends/monet5/rel_bin.c
sql/test/BugTracker-2024/Tests/CMDgen_group-Bug-7486.test
Branch: default
Log Message:
fixed bug #7486, topn's over referenced relations need to lookup the allready
constructed relation
diffs (36 lines):
diff --git a/sql/backends/monet5/rel_bin.c b/sql/backends/monet5/rel_bin.c
--- a/sql/backends/monet5/rel_bin.c
+++ b/sql/backends/monet5/rel_bin.c
@@ -4560,7 +4560,10 @@ rel2bin_topn(backend *be, sql_rel *rel,
sql_rel *rl = rel->l;
if (rl->op == op_project) {
- sub = rel2bin_project(be, rl, refs, rel);
+ if (rel_is_ref(rl))
+ sub = refs_find_rel(refs, rl);
+ else
+ sub = rel2bin_project(be, rl, refs, rel);
} else {
sub = subrel_bin(be, rl, refs);
}
diff --git a/sql/test/BugTracker-2024/Tests/CMDgen_group-Bug-7486.test
b/sql/test/BugTracker-2024/Tests/CMDgen_group-Bug-7486.test
--- a/sql/test/BugTracker-2024/Tests/CMDgen_group-Bug-7486.test
+++ b/sql/test/BugTracker-2024/Tests/CMDgen_group-Bug-7486.test
@@ -5,7 +5,6 @@ NULL
NULL
NULL
-skipif knownfail
query I nosort
WITH x AS ( SELECT * FROM generate_series ( 32989 , 8100 ) EXCEPT SELECT *
FROM generate_series ( 44 , 3 ) ) SELECT CASE WHEN NULL IN ( 69 , MAX ( CASE
WHEN 97 THEN 66 END ) OVER ( ) + ( SELECT COUNT ( * ) ) ) THEN 41 END FROM x
LIMIT 3
----
@@ -13,8 +12,7 @@ NULL
NULL
NULL
-skipif knownfail
-query I nosort
+statement error GDK reported error: BATsubcross: more than one match
SELECT ( WITH x AS ( SELECT * FROM generate_series ( 32989 , 8100 ) EXCEPT
SELECT * FROM generate_series ( 44 , 3 ) ) SELECT CASE WHEN NULL IN ( 69 , MAX
( CASE WHEN 97 THEN 66 END ) OVER ( ) + ( SELECT COUNT ( * ) ) ) THEN 41 END
FROM x )
----
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]