diff options
author | Aleksey Midenkov <midenok@gmail.com> | 2021-09-27 15:53:52 +0300 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2021-10-26 17:07:46 +0200 |
commit | 7da721be314c7355a549681dc93a782f89c99981 (patch) | |
tree | 3a1ed3eeaab621cd674e87d6d55a3ec44d46e467 /mysql-test/suite/parts | |
parent | 428024524cc8979b55c510f3d4685eb86767bfda (diff) | |
download | mariadb-git-7da721be314c7355a549681dc93a782f89c99981.tar.gz |
Review and crash-safety fix
Diffstat (limited to 'mysql-test/suite/parts')
-rw-r--r-- | mysql-test/suite/parts/r/partition_debug.result | 182 | ||||
-rw-r--r-- | mysql-test/suite/parts/t/partition_debug.test | 3 |
2 files changed, 182 insertions, 3 deletions
diff --git a/mysql-test/suite/parts/r/partition_debug.result b/mysql-test/suite/parts/r/partition_debug.result index 6a69fa0337a..dc46dbdd0b8 100644 --- a/mysql-test/suite/parts/r/partition_debug.result +++ b/mysql-test/suite/parts/r/partition_debug.result @@ -3899,7 +3899,6 @@ UNLOCK TABLES; DROP TABLE t1; set session debug_dbug=@save_dbug; set session debug_dbug="+d,fail_convert_partition_9"; -# Already finished DDL logging, so tp2 now exists: create or replace table t1 (x int primary key) partition by range(x) ( partition p1 values less than (10), @@ -3952,6 +3951,183 @@ ERROR HY000: Unknown error db.opt t1#P#p1.MYD t1#P#p1.MYI +t1#P#p2.MYD +t1#P#p2.MYI +t1#P#p3.MYD +t1#P#p3.MYI +t1#P#p4.MYD +t1#P#p4.MYI +t1#P#p5.MYD +t1#P#p5.MYI +t1#P#pn.MYD +t1#P#pn.MYI +t1.frm +t1.par +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `x` int(11) NOT NULL, + PRIMARY KEY (`x`) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 + PARTITION BY RANGE (`x`) +(PARTITION `p1` VALUES LESS THAN (10) ENGINE = MyISAM, + PARTITION `p2` VALUES LESS THAN (20) ENGINE = MyISAM, + PARTITION `p3` VALUES LESS THAN (30) ENGINE = MyISAM, + PARTITION `p4` VALUES LESS THAN (40) ENGINE = MyISAM, + PARTITION `p5` VALUES LESS THAN (50) ENGINE = MyISAM, + PARTITION `pn` VALUES LESS THAN MAXVALUE ENGINE = MyISAM) +SELECT * FROM t1; +x +12 +2 +22 +32 +42 +52 +DROP TABLE t1; +create or replace table t1 (x int primary key) +partition by range(x) ( +partition p1 values less than (10), +partition p2 values less than (20), +partition p3 values less than (30), +partition p4 values less than (40), +partition p5 values less than (50), +partition pn values less than maxvalue); +insert into t1 values (2), (12), (22), (32), (42), (52); +# d,fail_convert_partition_9: BEFORE failure (under LOCK TABLE) +db.opt +t1#P#p1.MYD +t1#P#p1.MYI +t1#P#p2.MYD +t1#P#p2.MYI +t1#P#p3.MYD +t1#P#p3.MYI +t1#P#p4.MYD +t1#P#p4.MYI +t1#P#p5.MYD +t1#P#p5.MYI +t1#P#pn.MYD +t1#P#pn.MYI +t1.frm +t1.par +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `x` int(11) NOT NULL, + PRIMARY KEY (`x`) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 + PARTITION BY RANGE (`x`) +(PARTITION `p1` VALUES LESS THAN (10) ENGINE = MyISAM, + PARTITION `p2` VALUES LESS THAN (20) ENGINE = MyISAM, + PARTITION `p3` VALUES LESS THAN (30) ENGINE = MyISAM, + PARTITION `p4` VALUES LESS THAN (40) ENGINE = MyISAM, + PARTITION `p5` VALUES LESS THAN (50) ENGINE = MyISAM, + PARTITION `pn` VALUES LESS THAN MAXVALUE ENGINE = MyISAM) +SELECT * FROM t1; +x +12 +2 +22 +32 +42 +52 +LOCK TABLE t1 WRITE; +alter table t1 convert partition p2 to table tp2; +ERROR HY000: Unknown error +# d,fail_convert_partition_9: AFTER failure (under LOCK TABLE) +db.opt +t1#P#p1.MYD +t1#P#p1.MYI +t1#P#p2.MYD +t1#P#p2.MYI +t1#P#p3.MYD +t1#P#p3.MYI +t1#P#p4.MYD +t1#P#p4.MYI +t1#P#p5.MYD +t1#P#p5.MYI +t1#P#pn.MYD +t1#P#pn.MYI +t1.frm +t1.par +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `x` int(11) NOT NULL, + PRIMARY KEY (`x`) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 + PARTITION BY RANGE (`x`) +(PARTITION `p1` VALUES LESS THAN (10) ENGINE = MyISAM, + PARTITION `p2` VALUES LESS THAN (20) ENGINE = MyISAM, + PARTITION `p3` VALUES LESS THAN (30) ENGINE = MyISAM, + PARTITION `p4` VALUES LESS THAN (40) ENGINE = MyISAM, + PARTITION `p5` VALUES LESS THAN (50) ENGINE = MyISAM, + PARTITION `pn` VALUES LESS THAN MAXVALUE ENGINE = MyISAM) +SELECT * FROM t1; +x +12 +2 +22 +32 +42 +52 +UNLOCK TABLES; +DROP TABLE t1; +set session debug_dbug=@save_dbug; +set session debug_dbug="+d,fail_convert_partition_11"; +# Already finished DDL logging, so tp2 now exists: +create or replace table t1 (x int primary key) +partition by range(x) ( +partition p1 values less than (10), +partition p2 values less than (20), +partition p3 values less than (30), +partition p4 values less than (40), +partition p5 values less than (50), +partition pn values less than maxvalue); +insert into t1 values (2), (12), (22), (32), (42), (52); +# d,fail_convert_partition_11: BEFORE failure +db.opt +t1#P#p1.MYD +t1#P#p1.MYI +t1#P#p2.MYD +t1#P#p2.MYI +t1#P#p3.MYD +t1#P#p3.MYI +t1#P#p4.MYD +t1#P#p4.MYI +t1#P#p5.MYD +t1#P#p5.MYI +t1#P#pn.MYD +t1#P#pn.MYI +t1.frm +t1.par +SHOW CREATE TABLE t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `x` int(11) NOT NULL, + PRIMARY KEY (`x`) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 + PARTITION BY RANGE (`x`) +(PARTITION `p1` VALUES LESS THAN (10) ENGINE = MyISAM, + PARTITION `p2` VALUES LESS THAN (20) ENGINE = MyISAM, + PARTITION `p3` VALUES LESS THAN (30) ENGINE = MyISAM, + PARTITION `p4` VALUES LESS THAN (40) ENGINE = MyISAM, + PARTITION `p5` VALUES LESS THAN (50) ENGINE = MyISAM, + PARTITION `pn` VALUES LESS THAN MAXVALUE ENGINE = MyISAM) +SELECT * FROM t1; +x +12 +2 +22 +32 +42 +52 +alter table t1 convert partition p2 to table tp2; +ERROR HY000: Unknown error +# d,fail_convert_partition_11: AFTER failure +db.opt +t1#P#p1.MYD +t1#P#p1.MYI t1#P#p3.MYD t1#P#p3.MYI t1#P#p4.MYD @@ -3994,7 +4170,7 @@ partition p4 values less than (40), partition p5 values less than (50), partition pn values less than maxvalue); insert into t1 values (2), (12), (22), (32), (42), (52); -# d,fail_convert_partition_9: BEFORE failure (under LOCK TABLE) +# d,fail_convert_partition_11: BEFORE failure (under LOCK TABLE) db.opt t1#P#p1.MYD t1#P#p1.MYI @@ -4037,7 +4213,7 @@ x LOCK TABLE t1 WRITE; alter table t1 convert partition p2 to table tp2; ERROR 42S01: Table 'tp2' already exists -# d,fail_convert_partition_9: AFTER failure (under LOCK TABLE) +# d,fail_convert_partition_11: AFTER failure (under LOCK TABLE) db.opt t1#P#p1.MYD t1#P#p1.MYI diff --git a/mysql-test/suite/parts/t/partition_debug.test b/mysql-test/suite/parts/t/partition_debug.test index 48b3392aa4f..91e098f423b 100644 --- a/mysql-test/suite/parts/t/partition_debug.test +++ b/mysql-test/suite/parts/t/partition_debug.test @@ -104,6 +104,9 @@ set session debug_dbug="+d,fail_convert_partition_8"; --source suite/parts/inc/partition_fail.inc set session debug_dbug=@save_dbug; set session debug_dbug="+d,fail_convert_partition_9"; +--source suite/parts/inc/partition_fail.inc +set session debug_dbug=@save_dbug; +set session debug_dbug="+d,fail_convert_partition_11"; --echo # Already finished DDL logging, so tp2 now exists: --source suite/parts/inc/partition_fail.inc set session debug_dbug=@save_dbug; |