Changeset: 7e3cbe0fb3ba for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=7e3cbe0fb3ba
Modified Files:
        sql/server/rel_schema.c
        sql/test/miscellaneous/Tests/simple_selects.sql
        sql/test/miscellaneous/Tests/simple_selects.stable.err
Branch: Jun2020
Log Message:

Small bugfix, samples not supported inside views


diffs (38 lines):

diff --git a/sql/server/rel_schema.c b/sql/server/rel_schema.c
--- a/sql/server/rel_schema.c
+++ b/sql/server/rel_schema.c
@@ -1179,8 +1179,9 @@ rel_create_view(sql_query *query, sql_sc
                if (ast->token == SQL_SELECT) {
                        SelectNode *sn = (SelectNode *) ast;
 
-                       if (sn->limit)
-                               return sql_error(sql, 01, SQLSTATE(42000) "%s 
VIEW: LIMIT not supported", base);
+                       assert(!sn->limit || !sn->sample);
+                       if (sn->limit || sn->sample)
+                               return sql_error(sql, 01, SQLSTATE(42000) "%s 
VIEW: %s not supported", base, sn->limit ? "LIMIT" : "SAMPLE");
                }
 
                sq = schema_selects(query, s, ast);
diff --git a/sql/test/miscellaneous/Tests/simple_selects.sql 
b/sql/test/miscellaneous/Tests/simple_selects.sql
--- a/sql/test/miscellaneous/Tests/simple_selects.sql
+++ b/sql/test/miscellaneous/Tests/simple_selects.sql
@@ -145,3 +145,5 @@ create table myy (a interval second);
 select * from myx natural full outer join myy; --error, types boolean(1,0) and 
sec_interval(13,0) are not equal
 drop table myx;
 drop table myy;
+
+create view iambad as select * from _tables sample 10; --error, sample inside 
views not supported
diff --git a/sql/test/miscellaneous/Tests/simple_selects.stable.err 
b/sql/test/miscellaneous/Tests/simple_selects.stable.err
--- a/sql/test/miscellaneous/Tests/simple_selects.stable.err
+++ b/sql/test/miscellaneous/Tests/simple_selects.stable.err
@@ -173,6 +173,10 @@ MAPI  = (monetdb) /var/tmp/mtest-628208/
 QUERY = select * from myx natural full outer join myy; --error, types 
boolean(1,0) and sec_interval(13,0) are not equal
 ERROR = !types boolean(1,0) and sec_interval(13,0) are not equal for column 'a'
 CODE  = 42000
+MAPI  = (monetdb) /var/tmp/mtest-753717/.s.monetdb.32140
+QUERY = create view iambad as select * from _tables sample 10; --error, sample 
inside views not supported
+ERROR = !CREATE VIEW: SAMPLE not supported
+CODE  = 42000
 
 # 17:31:38 >  
 # 17:31:38 >  "Done."
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to