mirror of
https://github.com/MariaDB/server.git
synced 2025-01-21 22:34:18 +01:00
220cd12f0b
Bug #30316: Some "parts" tests fail because the server uses "--secure-file-priv" Bug #30341: Test suite "parts" needs to be adapted to the new rules disallowing many functio Bug #30408: Suite "parts" needs bug numbers updated Bug #30411: Suite "parts" needs bug numbers updated: ER_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF Bug #30576: part_supported_sql_func_innodb.test tries to LOAD DATA outside of var dir Bug #30581: partition_value tests use disallowed CAST() function Included are some general fixes to allow the "parts" test suite to be run successfully. This includes disabling a few tests or parts of tests, cleaning up the test cases and their results, etc. Basically, these tests have not been run for some time, and had suffered some bit rot. The bugs were fixed as a single changeset, because in some ways they depend on each other. I couldn't be sure I'd updated all the error codes (for bugs 30408 and 30411) without also adapting to the new allowed functions rules (bug 30341), and vice versa.
141 lines
5.3 KiB
PHP
141 lines
5.3 KiB
PHP
################################################################################
|
|
# t/partition_blocked_sql_funcs.inc #
|
|
# #
|
|
# Purpose: #
|
|
# Tests around sql functions #
|
|
# #
|
|
# #
|
|
#------------------------------------------------------------------------------#
|
|
# Original Author: HH #
|
|
# Original Date: 2006-11-22 #
|
|
# Change Author: #
|
|
# Change Date: #
|
|
# Change: #
|
|
################################################################################
|
|
--echo -------------------------------------------------------------------------
|
|
--echo --- $sqlfunc in partition with coltype $coltype
|
|
--echo -------------------------------------------------------------------------
|
|
--echo must all fail!
|
|
--disable_warnings
|
|
drop table if exists t1 ;
|
|
drop table if exists t2 ;
|
|
drop table if exists t3 ;
|
|
drop table if exists t4 ;
|
|
drop table if exists t5 ;
|
|
drop table if exists t6 ;
|
|
--enable_warnings
|
|
|
|
--error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED,ER_PARSE_ERROR
|
|
eval create table t1 (col1 $coltype) engine=$engine
|
|
partition by range($sqlfunc)
|
|
(partition p0 values less than (15),
|
|
partition p1 values less than (31));
|
|
|
|
--error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED,ER_PARSE_ERROR
|
|
eval create table t2 (col1 $coltype) engine=$engine
|
|
partition by list($sqlfunc)
|
|
(partition p0 values in (1,2,3,4,5,6,7,8,9,10),
|
|
partition p1 values in (11,12,13,14,15,16,17,18,19,20),
|
|
partition p2 values in (21,22,23,24,25,26,27,28,29,30));
|
|
|
|
--error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED,ER_PARSE_ERROR
|
|
eval create table t3 (col1 $coltype) engine=$engine
|
|
partition by hash($sqlfunc);
|
|
|
|
--error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED,ER_PARSE_ERROR
|
|
eval create table t4 (colint int, col1 $coltype) engine=$engine
|
|
partition by range(colint)
|
|
subpartition by hash($sqlfunc) subpartitions 2
|
|
(partition p0 values less than (15),
|
|
partition p1 values less than (31));
|
|
|
|
--error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED,ER_PARSE_ERROR
|
|
eval create table t5 (colint int, col1 $coltype) engine=$engine
|
|
partition by list(colint)
|
|
subpartition by hash($sqlfunc) subpartitions 2
|
|
(partition p0 values in (1,2,3,4,5,6,7,8,9,10),
|
|
partition p1 values in (11,12,13,14,15,16,17,18,19,20),
|
|
partition p2 values in (21,22,23,24,25,26,27,28,29,30));
|
|
|
|
--error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED,ER_PARSE_ERROR
|
|
eval create table t6 (colint int, col1 $coltype) engine=$engine
|
|
partition by range(colint)
|
|
(partition p0 values less than ($valsqlfunc),
|
|
partition p1 values less than maxvalue);
|
|
|
|
--disable_abort_on_error
|
|
--disable_warnings
|
|
drop table if exists t11 ;
|
|
drop table if exists t22 ;
|
|
drop table if exists t33 ;
|
|
drop table if exists t44 ;
|
|
drop table if exists t55 ;
|
|
drop table if exists t66 ;
|
|
--enable_warnings
|
|
|
|
eval create table t11 (col1 $coltype) engine=$engine ;
|
|
|
|
eval create table t22 (col1 $coltype) engine=$engine ;
|
|
|
|
eval create table t33 (col1 $coltype) engine=$engine ;
|
|
|
|
eval create table t44 (colint int, col1 $coltype) engine=$engine ;
|
|
|
|
eval create table t55 (colint int, col1 $coltype) engine=$engine ;
|
|
|
|
eval create table t66 (colint int, col1 $coltype) engine=$engine ;
|
|
|
|
--error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED,ER_PARSE_ERROR
|
|
eval alter table t11
|
|
partition by range($sqlfunc)
|
|
(partition p0 values less than (15),
|
|
partition p1 values less than (31));
|
|
|
|
--error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED,ER_PARSE_ERROR
|
|
eval alter table t22
|
|
partition by list($sqlfunc)
|
|
(partition p0 values in (1,2,3,4,5,6,7,8,9,10),
|
|
partition p1 values in (11,12,13,14,15,16,17,18,19,20),
|
|
partition p2 values in (21,22,23,24,25,26,27,28,29,30));
|
|
|
|
--error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED,ER_PARSE_ERROR
|
|
eval alter table t33
|
|
partition by hash($sqlfunc);
|
|
--enable_abort_on_error
|
|
|
|
--error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED,ER_PARSE_ERROR
|
|
eval alter table t44
|
|
partition by range(colint)
|
|
subpartition by hash($sqlfunc) subpartitions 2
|
|
(partition p0 values less than (15),
|
|
partition p1 values less than (31));
|
|
|
|
--error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED,ER_PARSE_ERROR
|
|
eval alter table t55
|
|
partition by list(colint)
|
|
subpartition by hash($sqlfunc) subpartitions 2
|
|
(partition p0 values in (1,2,3,4,5,6,7,8,9,10),
|
|
partition p1 values in (11,12,13,14,15,16,17,18,19,20),
|
|
partition p2 values in (21,22,23,24,25,26,27,28,29,30));
|
|
|
|
--error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED,ER_PARSE_ERROR
|
|
eval alter table t66
|
|
partition by range(colint)
|
|
(partition p0 values less than ($valsqlfunc),
|
|
partition p1 values less than maxvalue);
|
|
|
|
--disable_warnings
|
|
drop table if exists t1 ;
|
|
drop table if exists t2 ;
|
|
drop table if exists t3 ;
|
|
drop table if exists t4 ;
|
|
drop table if exists t5 ;
|
|
drop table if exists t6 ;
|
|
drop table if exists t11 ;
|
|
drop table if exists t22 ;
|
|
drop table if exists t33 ;
|
|
drop table if exists t44 ;
|
|
drop table if exists t55 ;
|
|
drop table if exists t66 ;
|
|
--enable_warnings
|
|
|