mirror of
https://github.com/MariaDB/server.git
synced 2025-01-30 10:31:54 +01:00
merge
This commit is contained in:
commit
b76f391262
12 changed files with 465 additions and 316 deletions
|
@ -1,4 +1,29 @@
|
||||||
drop table if exists t1, t2;
|
drop table if exists t1, t2;
|
||||||
|
#
|
||||||
|
# Bug#55458: Partitioned MyISAM table gets crashed by multi-table update
|
||||||
|
#
|
||||||
|
CREATE TABLE t1 (
|
||||||
|
`id` int NOT NULL,
|
||||||
|
`user_num` int DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=MyISAM CHARSET=latin1;
|
||||||
|
INSERT INTO t1 VALUES (1,8601);
|
||||||
|
INSERT INTO t1 VALUES (2,8601);
|
||||||
|
INSERT INTO t1 VALUES (3,8601);
|
||||||
|
INSERT INTO t1 VALUES (4,8601);
|
||||||
|
CREATE TABLE t2 (
|
||||||
|
`id` int(11) NOT NULL,
|
||||||
|
`user_num` int DEFAULT NULL,
|
||||||
|
`name` varchar(64) NOT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=MyISAM CHARSET=latin1
|
||||||
|
PARTITION BY HASH (id)
|
||||||
|
PARTITIONS 2;
|
||||||
|
INSERT INTO t2 VALUES (1,8601,'John');
|
||||||
|
INSERT INTO t2 VALUES (2,8601,'JS');
|
||||||
|
INSERT INTO t2 VALUES (3,8601,'John S');
|
||||||
|
UPDATE t1, t2 SET t2.name = 'John Smith' WHERE t1.user_num = t2.user_num;
|
||||||
|
DROP TABLE t1, t2;
|
||||||
CREATE TABLE t1 (a INT, b INT)
|
CREATE TABLE t1 (a INT, b INT)
|
||||||
PARTITION BY LIST (a)
|
PARTITION BY LIST (a)
|
||||||
SUBPARTITION BY HASH (b)
|
SUBPARTITION BY HASH (b)
|
||||||
|
@ -1382,7 +1407,7 @@ NULL
|
||||||
2
|
2
|
||||||
explain partitions select * from t1 where a is null or a < 0 or a > 1;
|
explain partitions select * from t1 where a is null or a < 0 or a > 1;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 pn,p2 ALL NULL NULL NULL NULL 4 Using where
|
1 SIMPLE t1 pn,p2 ALL NULL NULL NULL NULL 2 Using where
|
||||||
drop table t1;
|
drop table t1;
|
||||||
CREATE TABLE t1 (id INT NOT NULL PRIMARY KEY, name VARCHAR(20))
|
CREATE TABLE t1 (id INT NOT NULL PRIMARY KEY, name VARCHAR(20))
|
||||||
ENGINE=MyISAM DEFAULT CHARSET=latin1
|
ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||||
|
|
|
@ -69,25 +69,25 @@ id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0,p1,p2,p3 ALL NULL NULL NULL NULL 9 Using where
|
1 SIMPLE t1 p0,p1,p2,p3 ALL NULL NULL NULL NULL 9 Using where
|
||||||
explain partitions select * from t1 where a is null or (a >= 5 and a <= 7);
|
explain partitions select * from t1 where a is null or (a >= 5 and a <= 7);
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0,p2,p3 ALL NULL NULL NULL NULL 9 Using where
|
1 SIMPLE t1 p0,p2,p3 ALL NULL NULL NULL NULL 7 Using where
|
||||||
explain partitions select * from t1 where a is null;
|
explain partitions select * from t1 where a is null;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 9 Using where
|
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 3 Using where
|
||||||
explain partitions select * from t1 where a is not null;
|
explain partitions select * from t1 where a is not null;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0,p1,p2,p3 ALL NULL NULL NULL NULL 9 Using where
|
1 SIMPLE t1 p0,p1,p2,p3 ALL NULL NULL NULL NULL 9 Using where
|
||||||
explain partitions select * from t1 where a >= 1 and a < 3;
|
explain partitions select * from t1 where a >= 1 and a < 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0,p1 ALL NULL NULL NULL NULL 9 Using where
|
1 SIMPLE t1 p0,p1 ALL NULL NULL NULL NULL 5 Using where
|
||||||
explain partitions select * from t1 where a >= 3 and a <= 5;
|
explain partitions select * from t1 where a >= 3 and a <= 5;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p1,p2 ALL NULL NULL NULL NULL 9 Using where
|
1 SIMPLE t1 p1,p2 ALL NULL NULL NULL NULL 4 Using where
|
||||||
explain partitions select * from t1 where a > 2 and a < 4;
|
explain partitions select * from t1 where a > 2 and a < 4;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p1 ALL NULL NULL NULL NULL 9 Using where
|
1 SIMPLE t1 p1 ALL NULL NULL NULL NULL 2 Using where
|
||||||
explain partitions select * from t1 where a > 3 and a <= 6;
|
explain partitions select * from t1 where a > 3 and a <= 6;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p2,p3 ALL NULL NULL NULL NULL 9 Using where
|
1 SIMPLE t1 p2,p3 ALL NULL NULL NULL NULL 4 Using where
|
||||||
explain partitions select * from t1 where a > 5;
|
explain partitions select * from t1 where a > 5;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0,p1,p2,p3 ALL NULL NULL NULL NULL 9 Using where
|
1 SIMPLE t1 p0,p1,p2,p3 ALL NULL NULL NULL NULL 9 Using where
|
||||||
|
|
|
@ -22,31 +22,31 @@ insert INTO t1 VALUES (110);
|
||||||
ERROR HY000: Table has no partition for value 110
|
ERROR HY000: Table has no partition for value 110
|
||||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 90;
|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 90;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using where
|
1 SIMPLE t1 ALL NULL NULL NULL NULL 0 Using where
|
||||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 90;
|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 90;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using where
|
1 SIMPLE t1 ALL NULL NULL NULL NULL 0 Using where
|
||||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 90;
|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 90;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using where
|
1 SIMPLE t1 ALL NULL NULL NULL NULL 0 Using where
|
||||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 89;
|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 89;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p90 ALL NULL NULL NULL NULL 7 Using where
|
1 SIMPLE t1 p90 ALL NULL NULL NULL NULL 3 Using where
|
||||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 89;
|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 89;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p90 ALL NULL NULL NULL NULL 7 Using where
|
1 SIMPLE t1 p90 ALL NULL NULL NULL NULL 3 Using where
|
||||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 89;
|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 89;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 7 Using where
|
1 SIMPLE t1 ALL NULL NULL NULL NULL 0 Using where
|
||||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 100;
|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = 100;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 7 Using where
|
1 SIMPLE t1 ALL NULL NULL NULL NULL 0 Using where
|
||||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 100;
|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= 100;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 7 Using where
|
1 SIMPLE t1 ALL NULL NULL NULL NULL 0 Using where
|
||||||
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 100;
|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > 100;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 7 Using where
|
1 SIMPLE t1 ALL NULL NULL NULL NULL 0 Using where
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
#
|
#
|
||||||
# Bug#50104: Partitioned table with just 1 partion works with fk
|
# Bug#50104: Partitioned table with just 1 partion works with fk
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -73,13 +73,13 @@ id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 pnull system NULL NULL NULL NULL 1
|
1 SIMPLE t1 pnull system NULL NULL NULL NULL 1
|
||||||
explain partitions select * from t1 where a >= 0;
|
explain partitions select * from t1 where a >= 0;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0,p1 ALL NULL NULL NULL NULL 3 Using where
|
1 SIMPLE t1 p0,p1 ALL NULL NULL NULL NULL 2 Using where
|
||||||
explain partitions select * from t1 where a < 0;
|
explain partitions select * from t1 where a < 0;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
|
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
|
||||||
explain partitions select * from t1 where a <= 0;
|
explain partitions select * from t1 where a <= 0;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 pnull,p0 ALL NULL NULL NULL NULL 3 Using where
|
1 SIMPLE t1 pnull,p0 ALL NULL NULL NULL NULL 2 Using where
|
||||||
explain partitions select * from t1 where a > 1;
|
explain partitions select * from t1 where a > 1;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
|
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
|
||||||
|
@ -112,16 +112,16 @@ select * from t1 where a > 1;
|
||||||
a b
|
a b
|
||||||
explain partitions select * from t1 where a is null;
|
explain partitions select * from t1 where a is null;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 pnull_pnullsp0,pnull_pnullsp1 ALL NULL NULL NULL NULL 6 Using where
|
1 SIMPLE t1 pnull_pnullsp0,pnull_pnullsp1 ALL NULL NULL NULL NULL 2 Using where
|
||||||
explain partitions select * from t1 where a >= 0;
|
explain partitions select * from t1 where a >= 0;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0_p0sp0,p0_p0sp1,p1_p1sp0,p1_p1sp1 ALL NULL NULL NULL NULL 6 Using where
|
1 SIMPLE t1 p0_p0sp0,p0_p0sp1,p1_p1sp0,p1_p1sp1 ALL NULL NULL NULL NULL 4 Using where
|
||||||
explain partitions select * from t1 where a < 0;
|
explain partitions select * from t1 where a < 0;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 pnull_pnullsp0,pnull_pnullsp1 ALL NULL NULL NULL NULL 6 Using where
|
1 SIMPLE t1 pnull_pnullsp0,pnull_pnullsp1 ALL NULL NULL NULL NULL 2 Using where
|
||||||
explain partitions select * from t1 where a <= 0;
|
explain partitions select * from t1 where a <= 0;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 pnull_pnullsp0,pnull_pnullsp1,p0_p0sp0,p0_p0sp1 ALL NULL NULL NULL NULL 6 Using where
|
1 SIMPLE t1 pnull_pnullsp0,pnull_pnullsp1,p0_p0sp0,p0_p0sp1 ALL NULL NULL NULL NULL 4 Using where
|
||||||
explain partitions select * from t1 where a > 1;
|
explain partitions select * from t1 where a > 1;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
|
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
|
||||||
|
|
|
@ -141,7 +141,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 part1 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 part1 ALL NULL NULL NULL NULL 7 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -165,7 +165,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 5 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -190,7 +190,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 3 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -226,7 +226,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p6 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p6 ALL NULL NULL NULL NULL 3 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -248,7 +248,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p4 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p4 ALL NULL NULL NULL NULL 4 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -269,7 +269,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 4 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -289,7 +289,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 5 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -308,7 +308,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 part1 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 part1 ALL NULL NULL NULL NULL 7 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -326,7 +326,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 10 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -452,7 +452,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 7 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -476,7 +476,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 5 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -504,7 +504,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p6 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p6 ALL NULL NULL NULL NULL 3 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -538,7 +538,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 4 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -563,7 +563,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 3 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -587,7 +587,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p4 ALL NULL NULL NULL NULL 23 Using where
|
1 SIMPLE t1 p4 ALL NULL NULL NULL NULL 10 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -610,7 +610,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 5 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -632,7 +632,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 7 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -653,7 +653,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 10 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
|
|
@ -155,7 +155,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 part1 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 part1 ALL NULL NULL NULL NULL 7 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -187,7 +187,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 5 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -228,7 +228,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 3 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -278,7 +278,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p6 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p6 ALL NULL NULL NULL NULL 3 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -312,7 +312,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p4 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p4 ALL NULL NULL NULL NULL 4 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -343,7 +343,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 4 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -371,7 +371,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 5 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -396,7 +396,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 part1 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 part1 ALL NULL NULL NULL NULL 7 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -418,7 +418,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 10 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -552,7 +552,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 7 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -584,7 +584,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 5 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -628,7 +628,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p6 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p6 ALL NULL NULL NULL NULL 3 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -676,7 +676,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 4 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -713,7 +713,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 3 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -747,7 +747,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p4 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p4 ALL NULL NULL NULL NULL 10 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -778,7 +778,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 5 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -806,7 +806,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 part7 ALL NULL NULL NULL NULL 7 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
@ -831,7 +831,7 @@ t1.frm
|
||||||
t1.par
|
t1.par
|
||||||
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
|
||||||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||||
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 20 Using where
|
1 SIMPLE t1 p0 ALL NULL NULL NULL NULL 10 Using where
|
||||||
# check read single success: 1
|
# check read single success: 1
|
||||||
# check read all success: 1
|
# check read all success: 1
|
||||||
# check read row by row success: 1
|
# check read row by row success: 1
|
||||||
|
|
|
@ -14,6 +14,33 @@
|
||||||
drop table if exists t1, t2;
|
drop table if exists t1, t2;
|
||||||
--enable_warnings
|
--enable_warnings
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug#55458: Partitioned MyISAM table gets crashed by multi-table update
|
||||||
|
--echo #
|
||||||
|
CREATE TABLE t1 (
|
||||||
|
`id` int NOT NULL,
|
||||||
|
`user_num` int DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=MyISAM CHARSET=latin1;
|
||||||
|
INSERT INTO t1 VALUES (1,8601);
|
||||||
|
INSERT INTO t1 VALUES (2,8601);
|
||||||
|
INSERT INTO t1 VALUES (3,8601);
|
||||||
|
INSERT INTO t1 VALUES (4,8601);
|
||||||
|
CREATE TABLE t2 (
|
||||||
|
`id` int(11) NOT NULL,
|
||||||
|
`user_num` int DEFAULT NULL,
|
||||||
|
`name` varchar(64) NOT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=MyISAM CHARSET=latin1
|
||||||
|
PARTITION BY HASH (id)
|
||||||
|
PARTITIONS 2;
|
||||||
|
INSERT INTO t2 VALUES (1,8601,'John');
|
||||||
|
INSERT INTO t2 VALUES (2,8601,'JS');
|
||||||
|
INSERT INTO t2 VALUES (3,8601,'John S');
|
||||||
|
|
||||||
|
UPDATE t1, t2 SET t2.name = 'John Smith' WHERE t1.user_num = t2.user_num;
|
||||||
|
|
||||||
|
DROP TABLE t1, t2;
|
||||||
#
|
#
|
||||||
# Bug#48276: can't add column if subpartition exists
|
# Bug#48276: can't add column if subpartition exists
|
||||||
CREATE TABLE t1 (a INT, b INT)
|
CREATE TABLE t1 (a INT, b INT)
|
||||||
|
|
|
@ -8,6 +8,30 @@
|
||||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||||
--enable_warnings
|
--enable_warnings
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # Bug#53806: Wrong estimates for range query in partitioned MyISAM table
|
||||||
|
--echo # Bug#46754: 'rows' field doesn't reflect partition pruning
|
||||||
|
--echo #
|
||||||
|
CREATE TABLE t1 (a INT PRIMARY KEY)
|
||||||
|
PARTITION BY RANGE (a) (
|
||||||
|
PARTITION p0 VALUES LESS THAN (1),
|
||||||
|
PARTITION p1 VALUES LESS THAN (2),
|
||||||
|
PARTITION p2 VALUES LESS THAN (3),
|
||||||
|
PARTITION p3 VALUES LESS THAN (4),
|
||||||
|
PARTITION p4 VALUES LESS THAN (5),
|
||||||
|
PARTITION p5 VALUES LESS THAN (6),
|
||||||
|
PARTITION max VALUES LESS THAN MAXVALUE);
|
||||||
|
|
||||||
|
INSERT INTO t1 VALUES (-1),(0),(1),(2),(3),(4),(5),(6),(7),(8);
|
||||||
|
|
||||||
|
--replace_column 1 # 2 # 3 # 4 # 5 # 6 # 7 # 8 # 9 # 11 #
|
||||||
|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= 1;
|
||||||
|
--replace_column 1 # 2 # 3 # 4 # 5 # 6 # 7 # 8 # 9 # 11 #
|
||||||
|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < 7;
|
||||||
|
--replace_column 1 # 2 # 3 # 4 # 5 # 6 # 7 # 8 # 9 # 11 #
|
||||||
|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= 1;
|
||||||
|
DROP TABLE t1;
|
||||||
|
|
||||||
--echo #
|
--echo #
|
||||||
--echo # Bug#49742: Partition Pruning not working correctly for RANGE
|
--echo # Bug#49742: Partition Pruning not working correctly for RANGE
|
||||||
--echo #
|
--echo #
|
||||||
|
|
|
@ -232,6 +232,8 @@ void ha_partition::init_handler_variables()
|
||||||
m_innodb= FALSE;
|
m_innodb= FALSE;
|
||||||
m_extra_cache= FALSE;
|
m_extra_cache= FALSE;
|
||||||
m_extra_cache_size= 0;
|
m_extra_cache_size= 0;
|
||||||
|
m_extra_prepare_for_update= FALSE;
|
||||||
|
m_extra_cache_part_id= NO_CURRENT_PART_ID;
|
||||||
m_handler_status= handler_not_initialized;
|
m_handler_status= handler_not_initialized;
|
||||||
m_low_byte_first= 1;
|
m_low_byte_first= 1;
|
||||||
m_part_field_array= NULL;
|
m_part_field_array= NULL;
|
||||||
|
@ -5380,9 +5382,6 @@ void ha_partition::get_dynamic_partition_info(PARTITION_INFO *stat_info,
|
||||||
when performing the sequential scan we will check this recorded value
|
when performing the sequential scan we will check this recorded value
|
||||||
and call extra_opt whenever we start scanning a new partition.
|
and call extra_opt whenever we start scanning a new partition.
|
||||||
|
|
||||||
monty: Neads to be fixed so that it's passed to all handlers when we
|
|
||||||
move to another partition during table scan.
|
|
||||||
|
|
||||||
HA_EXTRA_NO_CACHE:
|
HA_EXTRA_NO_CACHE:
|
||||||
When performing a UNION SELECT HA_EXTRA_NO_CACHE is called from the
|
When performing a UNION SELECT HA_EXTRA_NO_CACHE is called from the
|
||||||
flush method in the select_union class.
|
flush method in the select_union class.
|
||||||
|
@ -5394,7 +5393,7 @@ void ha_partition::get_dynamic_partition_info(PARTITION_INFO *stat_info,
|
||||||
for. If no cache is in use they will quickly return after finding
|
for. If no cache is in use they will quickly return after finding
|
||||||
this out. And we also ensure that all caches are disabled and no one
|
this out. And we also ensure that all caches are disabled and no one
|
||||||
is left by mistake.
|
is left by mistake.
|
||||||
In the future this call will probably be deleted an we will instead call
|
In the future this call will probably be deleted and we will instead call
|
||||||
::reset();
|
::reset();
|
||||||
|
|
||||||
HA_EXTRA_WRITE_CACHE:
|
HA_EXTRA_WRITE_CACHE:
|
||||||
|
@ -5406,8 +5405,9 @@ void ha_partition::get_dynamic_partition_info(PARTITION_INFO *stat_info,
|
||||||
This is called as part of a multi-table update. When the table to be
|
This is called as part of a multi-table update. When the table to be
|
||||||
updated is also scanned then this informs MyISAM handler to drop any
|
updated is also scanned then this informs MyISAM handler to drop any
|
||||||
caches if dynamic records are used (fixed size records do not care
|
caches if dynamic records are used (fixed size records do not care
|
||||||
about this call). We pass this along to all underlying MyISAM handlers
|
about this call). We pass this along to the first partition to scan, and
|
||||||
and ignore it for the rest.
|
flag that it is to be called after HA_EXTRA_CACHE when moving to the next
|
||||||
|
partition to scan.
|
||||||
|
|
||||||
HA_EXTRA_PREPARE_FOR_DROP:
|
HA_EXTRA_PREPARE_FOR_DROP:
|
||||||
Only used by MyISAM, called in preparation for a DROP TABLE.
|
Only used by MyISAM, called in preparation for a DROP TABLE.
|
||||||
|
@ -5554,9 +5554,21 @@ int ha_partition::extra(enum ha_extra_function operation)
|
||||||
case HA_EXTRA_PREPARE_FOR_RENAME:
|
case HA_EXTRA_PREPARE_FOR_RENAME:
|
||||||
DBUG_RETURN(prepare_for_rename());
|
DBUG_RETURN(prepare_for_rename());
|
||||||
break;
|
break;
|
||||||
|
case HA_EXTRA_PREPARE_FOR_UPDATE:
|
||||||
|
DBUG_ASSERT(m_extra_cache);
|
||||||
|
/*
|
||||||
|
Needs to be run on the first partition in the range now, and
|
||||||
|
later in late_extra_cache, when switching to a new partition to scan.
|
||||||
|
*/
|
||||||
|
m_extra_prepare_for_update= TRUE;
|
||||||
|
if (m_part_spec.start_part != NO_CURRENT_PART_ID)
|
||||||
|
{
|
||||||
|
DBUG_ASSERT(m_extra_cache_part_id == m_part_spec.start_part);
|
||||||
|
VOID(m_file[m_part_spec.start_part]->extra(HA_EXTRA_PREPARE_FOR_UPDATE));
|
||||||
|
}
|
||||||
|
break;
|
||||||
case HA_EXTRA_NORMAL:
|
case HA_EXTRA_NORMAL:
|
||||||
case HA_EXTRA_QUICK:
|
case HA_EXTRA_QUICK:
|
||||||
case HA_EXTRA_PREPARE_FOR_UPDATE:
|
|
||||||
case HA_EXTRA_FORCE_REOPEN:
|
case HA_EXTRA_FORCE_REOPEN:
|
||||||
case HA_EXTRA_PREPARE_FOR_DROP:
|
case HA_EXTRA_PREPARE_FOR_DROP:
|
||||||
case HA_EXTRA_FLUSH_CACHE:
|
case HA_EXTRA_FLUSH_CACHE:
|
||||||
|
@ -5579,10 +5591,22 @@ int ha_partition::extra(enum ha_extra_function operation)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case HA_EXTRA_NO_CACHE:
|
case HA_EXTRA_NO_CACHE:
|
||||||
|
{
|
||||||
|
int ret= 0;
|
||||||
|
if (m_extra_cache_part_id != NO_CURRENT_PART_ID)
|
||||||
|
ret= m_file[m_extra_cache_part_id]->extra(HA_EXTRA_NO_CACHE);
|
||||||
|
m_extra_cache= FALSE;
|
||||||
|
m_extra_cache_size= 0;
|
||||||
|
m_extra_prepare_for_update= FALSE;
|
||||||
|
m_extra_cache_part_id= NO_CURRENT_PART_ID;
|
||||||
|
DBUG_RETURN(ret);
|
||||||
|
}
|
||||||
case HA_EXTRA_WRITE_CACHE:
|
case HA_EXTRA_WRITE_CACHE:
|
||||||
{
|
{
|
||||||
m_extra_cache= FALSE;
|
m_extra_cache= FALSE;
|
||||||
m_extra_cache_size= 0;
|
m_extra_cache_size= 0;
|
||||||
|
m_extra_prepare_for_update= FALSE;
|
||||||
|
m_extra_cache_part_id= NO_CURRENT_PART_ID;
|
||||||
DBUG_RETURN(loop_extra(operation));
|
DBUG_RETURN(loop_extra(operation));
|
||||||
}
|
}
|
||||||
case HA_EXTRA_IGNORE_NO_KEY:
|
case HA_EXTRA_IGNORE_NO_KEY:
|
||||||
|
@ -5710,6 +5734,7 @@ int ha_partition::extra_opt(enum ha_extra_function operation, ulong cachesize)
|
||||||
void ha_partition::prepare_extra_cache(uint cachesize)
|
void ha_partition::prepare_extra_cache(uint cachesize)
|
||||||
{
|
{
|
||||||
DBUG_ENTER("ha_partition::prepare_extra_cache()");
|
DBUG_ENTER("ha_partition::prepare_extra_cache()");
|
||||||
|
DBUG_PRINT("info", ("cachesize %u", cachesize));
|
||||||
|
|
||||||
m_extra_cache= TRUE;
|
m_extra_cache= TRUE;
|
||||||
m_extra_cache_size= cachesize;
|
m_extra_cache_size= cachesize;
|
||||||
|
@ -5768,16 +5793,18 @@ int ha_partition::loop_extra(enum ha_extra_function operation)
|
||||||
{
|
{
|
||||||
int result= 0, tmp;
|
int result= 0, tmp;
|
||||||
handler **file;
|
handler **file;
|
||||||
|
bool is_select;
|
||||||
DBUG_ENTER("ha_partition::loop_extra()");
|
DBUG_ENTER("ha_partition::loop_extra()");
|
||||||
|
|
||||||
/*
|
is_select= (thd_sql_command(ha_thd()) == SQLCOM_SELECT);
|
||||||
TODO, 5.2: this is where you could possibly add optimisations to add the bitmap
|
|
||||||
_if_ a SELECT.
|
|
||||||
*/
|
|
||||||
for (file= m_file; *file; file++)
|
for (file= m_file; *file; file++)
|
||||||
{
|
{
|
||||||
if ((tmp= (*file)->extra(operation)))
|
if (!is_select ||
|
||||||
result= tmp;
|
bitmap_is_set(&(m_part_info->used_partitions), file - m_file))
|
||||||
|
{
|
||||||
|
if ((tmp= (*file)->extra(operation)))
|
||||||
|
result= tmp;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
DBUG_RETURN(result);
|
DBUG_RETURN(result);
|
||||||
}
|
}
|
||||||
|
@ -5798,14 +5825,22 @@ void ha_partition::late_extra_cache(uint partition_id)
|
||||||
{
|
{
|
||||||
handler *file;
|
handler *file;
|
||||||
DBUG_ENTER("ha_partition::late_extra_cache");
|
DBUG_ENTER("ha_partition::late_extra_cache");
|
||||||
|
DBUG_PRINT("info", ("extra_cache %u partid %u size %u", m_extra_cache,
|
||||||
|
partition_id, m_extra_cache_size));
|
||||||
|
|
||||||
if (!m_extra_cache)
|
if (!m_extra_cache && !m_extra_prepare_for_update)
|
||||||
DBUG_VOID_RETURN;
|
DBUG_VOID_RETURN;
|
||||||
file= m_file[partition_id];
|
file= m_file[partition_id];
|
||||||
if (m_extra_cache_size == 0)
|
if (m_extra_cache_size == 0)
|
||||||
VOID(file->extra(HA_EXTRA_CACHE));
|
VOID(file->extra(HA_EXTRA_CACHE));
|
||||||
else
|
else
|
||||||
VOID(file->extra_opt(HA_EXTRA_CACHE, m_extra_cache_size));
|
VOID(file->extra_opt(HA_EXTRA_CACHE, m_extra_cache_size));
|
||||||
|
if (m_extra_prepare_for_update)
|
||||||
|
{
|
||||||
|
DBUG_ASSERT(m_extra_cache);
|
||||||
|
VOID(file->extra(HA_EXTRA_PREPARE_FOR_UPDATE));
|
||||||
|
}
|
||||||
|
m_extra_cache_part_id= partition_id;
|
||||||
DBUG_VOID_RETURN;
|
DBUG_VOID_RETURN;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -5826,10 +5861,12 @@ void ha_partition::late_extra_no_cache(uint partition_id)
|
||||||
handler *file;
|
handler *file;
|
||||||
DBUG_ENTER("ha_partition::late_extra_no_cache");
|
DBUG_ENTER("ha_partition::late_extra_no_cache");
|
||||||
|
|
||||||
if (!m_extra_cache)
|
if (!m_extra_cache && !m_extra_prepare_for_update)
|
||||||
DBUG_VOID_RETURN;
|
DBUG_VOID_RETURN;
|
||||||
file= m_file[partition_id];
|
file= m_file[partition_id];
|
||||||
VOID(file->extra(HA_EXTRA_NO_CACHE));
|
VOID(file->extra(HA_EXTRA_NO_CACHE));
|
||||||
|
DBUG_ASSERT(partition_id == m_extra_cache_part_id);
|
||||||
|
m_extra_cache_part_id= NO_CURRENT_PART_ID;
|
||||||
DBUG_VOID_RETURN;
|
DBUG_VOID_RETURN;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -154,6 +154,10 @@ private:
|
||||||
*/
|
*/
|
||||||
bool m_extra_cache;
|
bool m_extra_cache;
|
||||||
uint m_extra_cache_size;
|
uint m_extra_cache_size;
|
||||||
|
/* The same goes for HA_EXTRA_PREPARE_FOR_UPDATE */
|
||||||
|
bool m_extra_prepare_for_update;
|
||||||
|
/* Which partition has active cache */
|
||||||
|
uint m_extra_cache_part_id;
|
||||||
|
|
||||||
void init_handler_variables();
|
void init_handler_variables();
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -16662,7 +16662,15 @@ static void select_describe(JOIN *join, bool need_tmp_table, bool need_order,
|
||||||
if (tab->select && tab->select->quick)
|
if (tab->select && tab->select->quick)
|
||||||
examined_rows= tab->select->quick->records;
|
examined_rows= tab->select->quick->records;
|
||||||
else if (tab->type == JT_NEXT || tab->type == JT_ALL)
|
else if (tab->type == JT_NEXT || tab->type == JT_ALL)
|
||||||
examined_rows= tab->limit ? tab->limit : tab->table->file->records();
|
{
|
||||||
|
if (tab->limit)
|
||||||
|
examined_rows= tab->limit;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
tab->table->file->info(HA_STATUS_VARIABLE);
|
||||||
|
examined_rows= tab->table->file->stats.records;
|
||||||
|
}
|
||||||
|
}
|
||||||
else
|
else
|
||||||
examined_rows=(ha_rows)join->best_positions[i].records_read;
|
examined_rows=(ha_rows)join->best_positions[i].records_read;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue