Changeset: 852e065654bd for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/852e065654bd
Modified Files:
sql/backends/monet5/sql_rank.c
sql/server/rel_select.c
sql/test/BugTracker-2024/Tests/rel_setop_get_statistics-Bug-7483.test
Branch: default
Log Message:
fixed issue #7483, introduce project in order by if relation isn't a simple
project yet.
fixed returns of error messages in rel_rankop.c
diffs (48 lines):
diff --git a/sql/backends/monet5/sql_rank.c b/sql/backends/monet5/sql_rank.c
--- a/sql/backends/monet5/sql_rank.c
+++ b/sql/backends/monet5/sql_rank.c
@@ -832,7 +832,7 @@ SQLntile(Client cntxt, MalBlkPtr mb, Mal
bailout:
unfix_inputs(3, b, p, n);
finalize_output(res, r, msg);
- return MAL_SUCCEED;
+ return msg;
}
static str
@@ -954,7 +954,7 @@ do_limit_value(Client cntxt, MalBlkPtr m
bailout:
unfix_inputs(3, b, s, e);
finalize_output(res, r, msg);
- return MAL_SUCCEED;
+ return msg;
}
str
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
@@ -4374,6 +4374,8 @@ rel_order_by_column_exp(sql_query *query
if (!found) {
if (needs_distinct)
return sql_error(sql, 02, SQLSTATE(42000)
"SELECT: with DISTINCT ORDER BY expressions must appear in select list");
+ if (!is_simple_project(r->op))
+ *R = r = rel_project(sql->sa, r,
rel_projections(sql, r, NULL, 1, 0));
append(r->exps, e);
} else {
e = found;
diff --git
a/sql/test/BugTracker-2024/Tests/rel_setop_get_statistics-Bug-7483.test
b/sql/test/BugTracker-2024/Tests/rel_setop_get_statistics-Bug-7483.test
--- a/sql/test/BugTracker-2024/Tests/rel_setop_get_statistics-Bug-7483.test
+++ b/sql/test/BugTracker-2024/Tests/rel_setop_get_statistics-Bug-7483.test
@@ -4,8 +4,9 @@ SELECT 'x' x UNION SELECT 10 x
x
10
-skipif knownfail
-query T nosort
+query I nosort
SELECT NTILE ( 1.000000 ) OVER ( ORDER BY x LIKE x ) FROM ( SELECT 'x' x UNION
SELECT 10 x ) v
----
+1
+1
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]