Loading mysql-test/r/partition_innodb_stmt.result 0 → 100644 +48 −0 Original line number Diff line number Diff line # connection default SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ; CREATE TABLE t1 ( id SMALLINT NOT NULL, PRIMARY KEY (id) ) ENGINE=innodb PARTITION BY RANGE (id) ( PARTITION p1 VALUES LESS THAN (2), PARTITION p2 VALUES LESS THAN (4), PARTITION p3 VALUES LESS THAN (10) ); INSERT INTO t1 VALUES (1),(2),(3); # Test READ COMMITTED -> REPEATABLE READ FLUSH TABLES; SET TRANSACTION ISOLATION LEVEL READ COMMITTED; BEGIN; SELECT * FROM t1; id 1 2 3 #connection con1 SET TRANSACTION ISOLATION LEVEL REPEATABLE READ; BEGIN; INSERT INTO t1 VALUES(7); COMMIT; # connection default COMMIT; FLUSH TABLES; # Test REPEATABLE READ -> READ COMMITTED SET TRANSACTION ISOLATION LEVEL REPEATABLE READ; BEGIN; SELECT * FROM t1; id 1 2 3 7 # connection con1 SET TRANSACTION ISOLATION LEVEL READ COMMITTED; BEGIN; INSERT INTO t1 VALUES(9); ERROR HY000: Binary logging not possible. Message: Transaction level 'READ-COMMITTED' in InnoDB is not safe for binlog mode 'STATEMENT' COMMIT; COMMIT; DROP TABLE t1; mysql-test/suite/parts/inc/partition_auto_increment.inc +28 −0 Original line number Diff line number Diff line Loading @@ -43,8 +43,13 @@ SET INSERT_ID = 30; INSERT INTO t1 VALUES (NULL); if (!$skip_update) { # InnoDB Does not handle this correctly, see bug#14793, bug#21641 UPDATE t1 SET c1 = 50 WHERE c1 = 17; UPDATE t1 SET c1 = 51 WHERE c1 = 19; FLUSH TABLES; UPDATE t1 SET c1 = 40 WHERE c1 = 50; SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_NAME='t1'; -- error 0, ER_BAD_NULL_ERROR UPDATE t1 SET c1 = NULL WHERE c1 = 4; if (!$mysql_errno) Loading Loading @@ -83,6 +88,16 @@ TRUNCATE TABLE t1; INSERT INTO t1 VALUES (NULL); SHOW CREATE TABLE t1; SELECT * FROM t1 ORDER BY c1; INSERT INTO t1 VALUES (100); INSERT INTO t1 VALUES (NULL); if (!$skip_delete) { DELETE FROM t1 WHERE c1 >= 100; } # InnoDB does reset auto_increment on OPTIMIZE, Bug#18274 # Archive does reset auto_increment on OPTIMIZE, Bug#40216 OPTIMIZE TABLE t1; SHOW CREATE TABLE t1; DROP TABLE t1; -- echo # Simple test with NULL Loading Loading @@ -184,6 +199,10 @@ if (!$skip_update) { UPDATE t1 SET c1 = 150 WHERE c1 = 17; UPDATE t1 SET c1 = 151 WHERE c1 = 19; FLUSH TABLES; UPDATE t1 SET c1 = 140 WHERE c1 = 150; SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_NAME='t1'; -- error 0, ER_BAD_NULL_ERROR UPDATE t1 SET c1 = NULL WHERE c1 = 4; if (!$mysql_errno) Loading Loading @@ -295,6 +314,15 @@ TRUNCATE TABLE t1; INSERT INTO t1 VALUES (NULL); SHOW CREATE TABLE t1; SELECT * FROM t1 ORDER BY c1; INSERT INTO t1 VALUES (100); INSERT INTO t1 VALUES (NULL); if (!$skip_delete) { DELETE FROM t1 WHERE c1 >= 100; } # InnoDB does reset auto_increment on OPTIMIZE, Bug#18274 OPTIMIZE TABLE t1; SHOW CREATE TABLE t1; DROP TABLE t1; -- echo # Test with two threads Loading mysql-test/suite/parts/inc/partition_mgm.inc +0 −25 Original line number Diff line number Diff line Loading @@ -13,7 +13,6 @@ # part_optA-D Extra partitioning options (E.g. INDEX/DATA DIR) # # # # have_bug33158 NDB case insensitive create, but case sensitive rename # # have_bug37719 Archive, crash when rename and then select # #------------------------------------------------------------------------------# # Original Author: mattiasj # # Original Date: 2008-06-27 # Loading Loading @@ -125,18 +124,12 @@ PARTITION BY KEY (a) PARTITION PartD $part_optD); INSERT INTO tablea VALUES (1), (2), (7), (8), (9), (10); SHOW TABLES; if (!$have_bug37719) { RENAME TABLE TableA to tableA; } --sorted_result SELECT * FROM tablea; if (!$have_bug37719) { --sorted_result SELECT * FROM tableA; RENAME TABLE tableA to TableA; } SHOW CREATE TABLE tablea; DROP TABLE tablea; } Loading Loading @@ -262,18 +255,12 @@ PARTITION BY HASH (a) PARTITION PartD $part_optD); INSERT INTO tablea VALUES (1), (2), (7), (8), (9), (10); SHOW TABLES; if (!$have_bug37719) { RENAME TABLE TableA to tableA; } --sorted_result SELECT * FROM tablea; if (!$have_bug37719) { --sorted_result SELECT * FROM tableA; RENAME TABLE tableA to TableA; } SHOW CREATE TABLE tablea; DROP TABLE tablea; } Loading Loading @@ -388,18 +375,12 @@ PARTITION BY RANGE (a) PARTITION PartD VALUES LESS THAN (13) $part_optD); INSERT INTO tablea VALUES (1), (2), (7), (8), (9), (10); SHOW TABLES; if (!$have_bug37719) { RENAME TABLE TableA to tableA; } --sorted_result SELECT * FROM tablea; if (!$have_bug37719) { --sorted_result SELECT * FROM tableA; RENAME TABLE tableA to TableA; } SHOW CREATE TABLE tablea; DROP TABLE tablea; } Loading Loading @@ -516,18 +497,12 @@ PARTITION BY LIST (a) PARTITION PartD VALUES IN (5,6,12) $part_optD); INSERT INTO tablea VALUES (1), (2), (7), (8), (9), (10); SHOW TABLES; if (!$have_bug37719) { RENAME TABLE TableA to tableA; } --sorted_result SELECT * FROM tablea; if (!$have_bug37719) { --sorted_result SELECT * FROM tableA; RENAME TABLE tableA to TableA; } SHOW CREATE TABLE tablea; DROP TABLE tablea; } Loading mysql-test/suite/parts/r/partition_auto_increment_archive.result +24 −0 Original line number Diff line number Diff line Loading @@ -105,6 +105,17 @@ c1 5 6 7 INSERT INTO t1 VALUES (100); INSERT INTO t1 VALUES (NULL); OPTIMIZE TABLE t1; Table Op Msg_type Msg_text test.t1 optimize status OK SHOW CREATE TABLE t1; Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) ) ENGINE=ARCHIVE DEFAULT CHARSET=latin1 DROP TABLE t1; # Simple test with NULL CREATE TABLE t1 ( Loading Loading @@ -368,6 +379,19 @@ c1 25 26 27 INSERT INTO t1 VALUES (100); INSERT INTO t1 VALUES (NULL); OPTIMIZE TABLE t1; Table Op Msg_type Msg_text test.t1 optimize status OK SHOW CREATE TABLE t1; Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) ) ENGINE=ARCHIVE DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ DROP TABLE t1; # Test with two threads # con default Loading mysql-test/suite/parts/r/partition_auto_increment_blackhole.result +38 −0 Original line number Diff line number Diff line Loading @@ -36,6 +36,12 @@ SET INSERT_ID = 30; INSERT INTO t1 VALUES (NULL); UPDATE t1 SET c1 = 50 WHERE c1 = 17; UPDATE t1 SET c1 = 51 WHERE c1 = 19; FLUSH TABLES; UPDATE t1 SET c1 = 40 WHERE c1 = 50; SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_NAME='t1'; AUTO_INCREMENT 1 UPDATE t1 SET c1 = NULL WHERE c1 = 4; # ERROR (only OK if Blackhole) should give ER_DUP_KEY or ER_DUP_ENTRY INSERT INTO t1 VALUES (NULL); Loading Loading @@ -96,6 +102,18 @@ t1 CREATE TABLE `t1` ( ) ENGINE=BLACKHOLE DEFAULT CHARSET=latin1 SELECT * FROM t1 ORDER BY c1; c1 INSERT INTO t1 VALUES (100); INSERT INTO t1 VALUES (NULL); DELETE FROM t1 WHERE c1 >= 100; OPTIMIZE TABLE t1; Table Op Msg_type Msg_text test.t1 optimize note The storage engine for the table doesn't support optimize SHOW CREATE TABLE t1; Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) ) ENGINE=BLACKHOLE DEFAULT CHARSET=latin1 DROP TABLE t1; # Simple test with NULL CREATE TABLE t1 ( Loading Loading @@ -167,6 +185,12 @@ INSERT INTO t1 VALUES (NULL), (90); INSERT INTO t1 VALUES (NULL); UPDATE t1 SET c1 = 150 WHERE c1 = 17; UPDATE t1 SET c1 = 151 WHERE c1 = 19; FLUSH TABLES; UPDATE t1 SET c1 = 140 WHERE c1 = 150; SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_NAME='t1'; AUTO_INCREMENT 1 UPDATE t1 SET c1 = NULL WHERE c1 = 4; # ERROR (only OK if Blackhole) should give ER_DUP_KEY or ER_DUP_ENTRY INSERT INTO t1 VALUES (NULL); Loading Loading @@ -278,6 +302,20 @@ t1 CREATE TABLE `t1` ( PARTITIONS 2 */ SELECT * FROM t1 ORDER BY c1; c1 INSERT INTO t1 VALUES (100); INSERT INTO t1 VALUES (NULL); DELETE FROM t1 WHERE c1 >= 100; OPTIMIZE TABLE t1; Table Op Msg_type Msg_text test.t1 optimize note The storage engine for the table doesn't support optimize SHOW CREATE TABLE t1; Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) ) ENGINE=BLACKHOLE DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ DROP TABLE t1; # Test with two threads # con default Loading Loading
mysql-test/r/partition_innodb_stmt.result 0 → 100644 +48 −0 Original line number Diff line number Diff line # connection default SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ; CREATE TABLE t1 ( id SMALLINT NOT NULL, PRIMARY KEY (id) ) ENGINE=innodb PARTITION BY RANGE (id) ( PARTITION p1 VALUES LESS THAN (2), PARTITION p2 VALUES LESS THAN (4), PARTITION p3 VALUES LESS THAN (10) ); INSERT INTO t1 VALUES (1),(2),(3); # Test READ COMMITTED -> REPEATABLE READ FLUSH TABLES; SET TRANSACTION ISOLATION LEVEL READ COMMITTED; BEGIN; SELECT * FROM t1; id 1 2 3 #connection con1 SET TRANSACTION ISOLATION LEVEL REPEATABLE READ; BEGIN; INSERT INTO t1 VALUES(7); COMMIT; # connection default COMMIT; FLUSH TABLES; # Test REPEATABLE READ -> READ COMMITTED SET TRANSACTION ISOLATION LEVEL REPEATABLE READ; BEGIN; SELECT * FROM t1; id 1 2 3 7 # connection con1 SET TRANSACTION ISOLATION LEVEL READ COMMITTED; BEGIN; INSERT INTO t1 VALUES(9); ERROR HY000: Binary logging not possible. Message: Transaction level 'READ-COMMITTED' in InnoDB is not safe for binlog mode 'STATEMENT' COMMIT; COMMIT; DROP TABLE t1;
mysql-test/suite/parts/inc/partition_auto_increment.inc +28 −0 Original line number Diff line number Diff line Loading @@ -43,8 +43,13 @@ SET INSERT_ID = 30; INSERT INTO t1 VALUES (NULL); if (!$skip_update) { # InnoDB Does not handle this correctly, see bug#14793, bug#21641 UPDATE t1 SET c1 = 50 WHERE c1 = 17; UPDATE t1 SET c1 = 51 WHERE c1 = 19; FLUSH TABLES; UPDATE t1 SET c1 = 40 WHERE c1 = 50; SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_NAME='t1'; -- error 0, ER_BAD_NULL_ERROR UPDATE t1 SET c1 = NULL WHERE c1 = 4; if (!$mysql_errno) Loading Loading @@ -83,6 +88,16 @@ TRUNCATE TABLE t1; INSERT INTO t1 VALUES (NULL); SHOW CREATE TABLE t1; SELECT * FROM t1 ORDER BY c1; INSERT INTO t1 VALUES (100); INSERT INTO t1 VALUES (NULL); if (!$skip_delete) { DELETE FROM t1 WHERE c1 >= 100; } # InnoDB does reset auto_increment on OPTIMIZE, Bug#18274 # Archive does reset auto_increment on OPTIMIZE, Bug#40216 OPTIMIZE TABLE t1; SHOW CREATE TABLE t1; DROP TABLE t1; -- echo # Simple test with NULL Loading Loading @@ -184,6 +199,10 @@ if (!$skip_update) { UPDATE t1 SET c1 = 150 WHERE c1 = 17; UPDATE t1 SET c1 = 151 WHERE c1 = 19; FLUSH TABLES; UPDATE t1 SET c1 = 140 WHERE c1 = 150; SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_NAME='t1'; -- error 0, ER_BAD_NULL_ERROR UPDATE t1 SET c1 = NULL WHERE c1 = 4; if (!$mysql_errno) Loading Loading @@ -295,6 +314,15 @@ TRUNCATE TABLE t1; INSERT INTO t1 VALUES (NULL); SHOW CREATE TABLE t1; SELECT * FROM t1 ORDER BY c1; INSERT INTO t1 VALUES (100); INSERT INTO t1 VALUES (NULL); if (!$skip_delete) { DELETE FROM t1 WHERE c1 >= 100; } # InnoDB does reset auto_increment on OPTIMIZE, Bug#18274 OPTIMIZE TABLE t1; SHOW CREATE TABLE t1; DROP TABLE t1; -- echo # Test with two threads Loading
mysql-test/suite/parts/inc/partition_mgm.inc +0 −25 Original line number Diff line number Diff line Loading @@ -13,7 +13,6 @@ # part_optA-D Extra partitioning options (E.g. INDEX/DATA DIR) # # # # have_bug33158 NDB case insensitive create, but case sensitive rename # # have_bug37719 Archive, crash when rename and then select # #------------------------------------------------------------------------------# # Original Author: mattiasj # # Original Date: 2008-06-27 # Loading Loading @@ -125,18 +124,12 @@ PARTITION BY KEY (a) PARTITION PartD $part_optD); INSERT INTO tablea VALUES (1), (2), (7), (8), (9), (10); SHOW TABLES; if (!$have_bug37719) { RENAME TABLE TableA to tableA; } --sorted_result SELECT * FROM tablea; if (!$have_bug37719) { --sorted_result SELECT * FROM tableA; RENAME TABLE tableA to TableA; } SHOW CREATE TABLE tablea; DROP TABLE tablea; } Loading Loading @@ -262,18 +255,12 @@ PARTITION BY HASH (a) PARTITION PartD $part_optD); INSERT INTO tablea VALUES (1), (2), (7), (8), (9), (10); SHOW TABLES; if (!$have_bug37719) { RENAME TABLE TableA to tableA; } --sorted_result SELECT * FROM tablea; if (!$have_bug37719) { --sorted_result SELECT * FROM tableA; RENAME TABLE tableA to TableA; } SHOW CREATE TABLE tablea; DROP TABLE tablea; } Loading Loading @@ -388,18 +375,12 @@ PARTITION BY RANGE (a) PARTITION PartD VALUES LESS THAN (13) $part_optD); INSERT INTO tablea VALUES (1), (2), (7), (8), (9), (10); SHOW TABLES; if (!$have_bug37719) { RENAME TABLE TableA to tableA; } --sorted_result SELECT * FROM tablea; if (!$have_bug37719) { --sorted_result SELECT * FROM tableA; RENAME TABLE tableA to TableA; } SHOW CREATE TABLE tablea; DROP TABLE tablea; } Loading Loading @@ -516,18 +497,12 @@ PARTITION BY LIST (a) PARTITION PartD VALUES IN (5,6,12) $part_optD); INSERT INTO tablea VALUES (1), (2), (7), (8), (9), (10); SHOW TABLES; if (!$have_bug37719) { RENAME TABLE TableA to tableA; } --sorted_result SELECT * FROM tablea; if (!$have_bug37719) { --sorted_result SELECT * FROM tableA; RENAME TABLE tableA to TableA; } SHOW CREATE TABLE tablea; DROP TABLE tablea; } Loading
mysql-test/suite/parts/r/partition_auto_increment_archive.result +24 −0 Original line number Diff line number Diff line Loading @@ -105,6 +105,17 @@ c1 5 6 7 INSERT INTO t1 VALUES (100); INSERT INTO t1 VALUES (NULL); OPTIMIZE TABLE t1; Table Op Msg_type Msg_text test.t1 optimize status OK SHOW CREATE TABLE t1; Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) ) ENGINE=ARCHIVE DEFAULT CHARSET=latin1 DROP TABLE t1; # Simple test with NULL CREATE TABLE t1 ( Loading Loading @@ -368,6 +379,19 @@ c1 25 26 27 INSERT INTO t1 VALUES (100); INSERT INTO t1 VALUES (NULL); OPTIMIZE TABLE t1; Table Op Msg_type Msg_text test.t1 optimize status OK SHOW CREATE TABLE t1; Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) ) ENGINE=ARCHIVE DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ DROP TABLE t1; # Test with two threads # con default Loading
mysql-test/suite/parts/r/partition_auto_increment_blackhole.result +38 −0 Original line number Diff line number Diff line Loading @@ -36,6 +36,12 @@ SET INSERT_ID = 30; INSERT INTO t1 VALUES (NULL); UPDATE t1 SET c1 = 50 WHERE c1 = 17; UPDATE t1 SET c1 = 51 WHERE c1 = 19; FLUSH TABLES; UPDATE t1 SET c1 = 40 WHERE c1 = 50; SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_NAME='t1'; AUTO_INCREMENT 1 UPDATE t1 SET c1 = NULL WHERE c1 = 4; # ERROR (only OK if Blackhole) should give ER_DUP_KEY or ER_DUP_ENTRY INSERT INTO t1 VALUES (NULL); Loading Loading @@ -96,6 +102,18 @@ t1 CREATE TABLE `t1` ( ) ENGINE=BLACKHOLE DEFAULT CHARSET=latin1 SELECT * FROM t1 ORDER BY c1; c1 INSERT INTO t1 VALUES (100); INSERT INTO t1 VALUES (NULL); DELETE FROM t1 WHERE c1 >= 100; OPTIMIZE TABLE t1; Table Op Msg_type Msg_text test.t1 optimize note The storage engine for the table doesn't support optimize SHOW CREATE TABLE t1; Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) ) ENGINE=BLACKHOLE DEFAULT CHARSET=latin1 DROP TABLE t1; # Simple test with NULL CREATE TABLE t1 ( Loading Loading @@ -167,6 +185,12 @@ INSERT INTO t1 VALUES (NULL), (90); INSERT INTO t1 VALUES (NULL); UPDATE t1 SET c1 = 150 WHERE c1 = 17; UPDATE t1 SET c1 = 151 WHERE c1 = 19; FLUSH TABLES; UPDATE t1 SET c1 = 140 WHERE c1 = 150; SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='test' AND TABLE_NAME='t1'; AUTO_INCREMENT 1 UPDATE t1 SET c1 = NULL WHERE c1 = 4; # ERROR (only OK if Blackhole) should give ER_DUP_KEY or ER_DUP_ENTRY INSERT INTO t1 VALUES (NULL); Loading Loading @@ -278,6 +302,20 @@ t1 CREATE TABLE `t1` ( PARTITIONS 2 */ SELECT * FROM t1 ORDER BY c1; c1 INSERT INTO t1 VALUES (100); INSERT INTO t1 VALUES (NULL); DELETE FROM t1 WHERE c1 >= 100; OPTIMIZE TABLE t1; Table Op Msg_type Msg_text test.t1 optimize note The storage engine for the table doesn't support optimize SHOW CREATE TABLE t1; Table Create Table t1 CREATE TABLE `t1` ( `c1` int(11) NOT NULL AUTO_INCREMENT, PRIMARY KEY (`c1`) ) ENGINE=BLACKHOLE DEFAULT CHARSET=latin1 /*!50100 PARTITION BY HASH (c1) PARTITIONS 2 */ DROP TABLE t1; # Test with two threads # con default Loading