Changeset: 8ef11b32cb8e for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/8ef11b32cb8e
Modified Files:
        sql/ChangeLog
        sql/server/rel_psm.c
        sql/server/sql_parser.y
        sql/server/sql_scan.c
        sql/test/mergetables/Tests/mergequery.test
        sql/test/mergetables/Tests/part-elim.test
        sql/test/remote/Tests/partition_elim.test
Branch: default
Log Message:

Removed the obsolete ANALYZE statement syntax options: SAMPLE nn and MINMAX. 
Both options have been ignored since release Jan2022. Now they are no longer 
accepted in the ANALYZE statement.


diffs (172 lines):

diff --git a/sql/ChangeLog b/sql/ChangeLog
--- a/sql/ChangeLog
+++ b/sql/ChangeLog
@@ -2,6 +2,9 @@
 # This file is updated with Maddlog
 
 * Thu May  2 2024 Martin van Dinther <martin.van.dint...@monetdbsolutions.com>
+- Removed the obsolete ANALYZE statement syntax options: SAMPLE nn and
+  MINMAX. Both options have been ignored since release Jan2022. Now they
+  are no longer accepted in the ANALYZE statement.
 - The ANALYZE statement can now be used in procedures, functions and triggers.
 
 * Wed Apr 10 2024 Lucas Pereira <lucas.pere...@monetdbsolutions.com>
diff --git a/sql/server/rel_psm.c b/sql/server/rel_psm.c
--- a/sql/server/rel_psm.c
+++ b/sql/server/rel_psm.c
@@ -650,26 +650,22 @@ psm_analyze(sql_query *query, dlist *qna
                if (columns)
                        list_append(tl, exp_subtype(tname_exp));
        }
+       if (!(f = sql_bind_func_(sql, "sys", "analyze", tl, F_PROC, true, 
false)))
+               return sql_error(sql, ERR_NOTFOUND, SQLSTATE(42000) "Analyze 
procedure missing");
+       if (!execute_priv(sql, f->func))
+               return sql_error(sql, 02, SQLSTATE(42000) "No privilege to call 
analyze procedure");
        if (!columns) {
-               if (!(f = sql_bind_func_(sql, "sys", "analyze", tl, F_PROC, 
true, false)))
-                       return sql_error(sql, ERR_NOTFOUND, SQLSTATE(42000) 
"Analyze procedure missing");
-               if (!execute_priv(sql, f->func))
-                       return sql_error(sql, 02, SQLSTATE(42000) "No privilege 
to call analyze procedure");
                list_append(analyze_calls, exp_op(sql->sa, exps, f));
        } else {
                if (!sname || !tname)
                        return sql_error(sql, ERR_NOTFOUND, SQLSTATE(42000) 
"Analyze schema or table name missing");
-               if (!(f = sql_bind_func_(sql, "sys", "analyze", tl, F_PROC, 
true, false)))
-                       return sql_error(sql, ERR_NOTFOUND, SQLSTATE(42000) 
"Analyze procedure missing");
-               if (!execute_priv(sql, f->func))
-                       return sql_error(sql, 02, SQLSTATE(42000) "No privilege 
to call analyze procedure");
                for(dnode *n = columns->h; n; n = n->next) {
                        const char *cname = n->data.sval;
                        list *nexps = list_dup(exps, NULL);
                        sql_exp *cname_exp = exp_atom_str(sql->sa, cname, &tpe);
 
                        list_append(nexps, cname_exp);
-                       /* call analyze( opt_minmax, opt_sample_size, sname, 
tname, cname) */
+                       /* call analyze(sname, tname, cname) */
                        list_append(analyze_calls, exp_op(sql->sa, nexps, f));
                }
        }
diff --git a/sql/server/sql_parser.y b/sql/server/sql_parser.y
--- a/sql/server/sql_parser.y
+++ b/sql/server/sql_parser.y
@@ -579,7 +579,6 @@ int yydebug=1;
        opt_index_type
        opt_match
        opt_match_type
-       opt_minmax
        opt_on_commit
        opt_outer
        opt_ref_action
@@ -720,7 +719,7 @@ SQLCODE SQLERROR UNDER WHENEVER
 %token CHECK CONSTRAINT CREATE COMMENT NULLS FIRST LAST
 %token TYPE PROCEDURE FUNCTION sqlLOADER AGGREGATE RETURNS EXTERNAL sqlNAME 
DECLARE
 %token CALL LANGUAGE
-%token ANALYZE MINMAX SQL_EXPLAIN SQL_PLAN SQL_TRACE PREP PREPARE EXEC EXECUTE 
DEALLOCATE
+%token ANALYZE SQL_EXPLAIN SQL_PLAN SQL_TRACE PREP PREPARE EXEC EXECUTE 
DEALLOCATE
 %token DEFAULT DISTINCT DROP TRUNCATE
 %token FOREIGN
 %token RENAME ENCRYPTED UNENCRYPTED PASSWORD GRANT REVOKE ROLE ADMIN INTO
@@ -963,12 +962,10 @@ declare:
 
        /* schema definition language */
 analyze_statement:
-   ANALYZE qname opt_column_list opt_sample opt_minmax
+   ANALYZE qname opt_column_list
                { dlist *l = L();
                append_list(l, $2);
                append_list(l, $3);
-               append_symbol(l, $4);
-               append_int(l, $5);
                $$ = _symbol_create_list( SQL_ANALYZE, l); }
  ;
 
@@ -986,11 +983,6 @@ sql:
  |  comment_on_statement
  ;
 
-opt_minmax:
-   /* empty */         { $$ = 0; }
- | MINMAX              { $$ = 1; }
- ;
-
 declare_statement:
        declare variable_list { $$ = _symbol_create_list( SQL_DECLARE, $2); }
   | declare table_def     { $$ = $2; if ($$) $$->token = SQL_DECLARE_TABLE; }
@@ -5988,7 +5980,6 @@ non_reserved_word:
 | MAX_MEMORY   { $$ = sa_strdup(SA, "max_memory"); }
 | MAXVALUE     { $$ = sa_strdup(SA, "maxvalue"); }
 | MAX_WORKERS  { $$ = sa_strdup(SA, "max_workers"); }
-| MINMAX       { $$ = sa_strdup(SA, "minmax"); }
 | MINVALUE     { $$ = sa_strdup(SA, "minvalue"); }
 | sqlNAME      { $$ = sa_strdup(SA, "name"); }
 | NATIVE       { $$ = sa_strdup(SA, "native"); }
diff --git a/sql/server/sql_scan.c b/sql/server/sql_scan.c
--- a/sql/server/sql_scan.c
+++ b/sql/server/sql_scan.c
@@ -413,7 +413,6 @@ scanner_init_keywords(void)
        failed += keywords_insert("LANGUAGE", LANGUAGE);
 
        failed += keywords_insert("ANALYZE", ANALYZE);
-       failed += keywords_insert("MINMAX", MINMAX);
        failed += keywords_insert("EXPLAIN", SQL_EXPLAIN);
        failed += keywords_insert("PLAN", SQL_PLAN);
        failed += keywords_insert("TRACE", SQL_TRACE);
diff --git a/sql/test/mergetables/Tests/mergequery.test 
b/sql/test/mergetables/Tests/mergequery.test
--- a/sql/test/mergetables/Tests/mergequery.test
+++ b/sql/test/mergetables/Tests/mergequery.test
@@ -67,10 +67,10 @@ statement ok
 alter table part2 set read only
 
 statement ok
-analyze sys.part1 (x,y,z) minmax
+analyze sys.part1 (x,y,z)
 
 statement ok
-analyze sys.part2 (x,y,z) minmax
+analyze sys.part2 (x,y,z)
 
 query RRR rowsort
 SELECT * FROM complete where x>=0.0 AND x <=1.0
diff --git a/sql/test/mergetables/Tests/part-elim.test 
b/sql/test/mergetables/Tests/part-elim.test
--- a/sql/test/mergetables/Tests/part-elim.test
+++ b/sql/test/mergetables/Tests/part-elim.test
@@ -44,10 +44,10 @@ statement ok
 alter table mt2 set read only
 
 statement ok
-analyze sys.mt1 (id,posX) minmax
+analyze sys.mt1 (id,posX)
 
 statement ok
-analyze sys.mt2 (id,posX) minmax
+analyze sys.mt2 (id,posX)
 
 query T nosort
 plan select * from test where id between 1 and 10000
diff --git a/sql/test/remote/Tests/partition_elim.test 
b/sql/test/remote/Tests/partition_elim.test
--- a/sql/test/remote/Tests/partition_elim.test
+++ b/sql/test/remote/Tests/partition_elim.test
@@ -94,19 +94,19 @@ select y from test4 where y between 0 an
 ----
 
 query R rowsort
-analyze sys.test1 minmax
+analyze sys.test1
 ----
 
 query R rowsort
-analyze sys.test2 minmax
+analyze sys.test2
 ----
 
 query R rowsort
-analyze sys.test3 minmax
+analyze sys.test3
 ----
 
 query R rowsort
-analyze sys.test4 minmax
+analyze sys.test4
 ----
 
 query T python .explain.function_histogram
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to