mirror of
https://github.com/MariaDB/server.git
synced 2025-01-22 06:44:16 +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.
74 lines
2.1 KiB
PHP
74 lines
2.1 KiB
PHP
--disable_query_log
|
|
# DATA DIRECTORY
|
|
eval SET @data_dir = 'DATA DIRECTORY =
|
|
''/tmp''';
|
|
let $data_directory = `select @data_dir`;
|
|
|
|
#INDEX DIRECTORY
|
|
eval SET @indx_dir = 'INDEX DIRECTORY =
|
|
''/tmp''';
|
|
let $index_directory = `select @indx_dir`;
|
|
--enable_query_log
|
|
|
|
eval create table t1 (a enum('A','B','C','D','E','F','G','H','I','J','K','L') not null, primary key(a)) engine=$engine
|
|
partition by key (a) (
|
|
partition pa1 $data_directory $index_directory max_rows=20 min_rows=2,
|
|
partition pa2 $data_directory $index_directory max_rows=30 min_rows=3,
|
|
partition pa3 $data_directory $index_directory max_rows=30 min_rows=4,
|
|
partition pa4 $data_directory $index_directory max_rows=40 min_rows=2);
|
|
show create table t1;
|
|
insert into t1 values ('A'),('D'),('L'),('G');
|
|
select * from t1;
|
|
select * from t1 where a='A';
|
|
update t1 set a='E' where a='L';
|
|
select * from t1;
|
|
delete from t1 where a='E';
|
|
select * from t1;
|
|
drop table t1;
|
|
|
|
eval create table t2 (a enum (
|
|
'1','2','3','4','5','6','7','8','9','0',
|
|
'A','B','C','D','E','F','G','H','I','J','K','L',
|
|
'M','N','O','P','Q','R','S','T','U','V','W','X',
|
|
'Y','Z'
|
|
) not null, primary key(a)) engine=$engine
|
|
partition by key (a) partitions 27;
|
|
show create table t2;
|
|
let $letter=26;
|
|
--echo $count inserts;
|
|
#--disable_query_log
|
|
while ($letter)
|
|
{
|
|
eval insert into t2 values (char(ascii('A')+$letter));
|
|
dec $letter;
|
|
}
|
|
insert into t2 values ('1'),('2'),('3'),('4'),('5'),('6'),('7'),('8'),('9'),('0');
|
|
select count(*) from t2;
|
|
select * from t2;
|
|
drop table t2;
|
|
|
|
eval create table t3 (a enum (
|
|
'1','2','3','4','5','6','7','8','9','0',
|
|
'A','B','C','D','E','F','G','H','I','J','K','L',
|
|
'M','N','O','P','Q','R','S','T','U','V','W','X',
|
|
'Y','Z'
|
|
) not null, primary key(a)) engine=$engine
|
|
partition by range (a) subpartition by key (a) subpartitions 3 (
|
|
partition pa9 values less than (10),
|
|
partition pa18 values less than (19),
|
|
partition pa27 values less than (28),
|
|
partition pa36 values less than (37)
|
|
);
|
|
show create table t3;
|
|
let $letter=36;
|
|
--echo $count inserts;
|
|
#--disable_query_log
|
|
while ($letter)
|
|
{
|
|
#eval insert into t3 values ($letter);
|
|
dec $letter;
|
|
}
|
|
select count(*) from t3;
|
|
select * from t3;
|
|
drop table t3;
|
|
|