MDEV-408: SHOW EXPLAIN: Some values are chopped off in SHOW EXPLAIN output
- Fix I_S table definition for EXPLAIN output.
This commit is contained in:
parent
8950ed8fdd
commit
3956950b9f
@ -926,4 +926,29 @@ a
|
||||
16
|
||||
set debug_dbug='';
|
||||
drop table t1;
|
||||
#
|
||||
# MDEV-408: SHOW EXPLAIN: Some values are chopped off in SHOW EXPLAIN output
|
||||
#
|
||||
CREATE TABLE t1 (a INT, b VARCHAR(35)) ENGINE=InnoDB;
|
||||
INSERT INTO t1 VALUES (3989,'Abilene'),(3873,'Akron');
|
||||
CREATE TABLE t2 (c INT, d VARCHAR(52) PRIMARY KEY, KEY(c)) ENGINE=InnoDB;
|
||||
INSERT INTO t2 VALUES (86,'English'),(87,'Russian');
|
||||
explain SELECT SUM(a + SLEEP(0.1)) FROM t1 WHERE a IN ( SELECT c FROM t2 WHERE d < b ) OR b < 's';
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 PRIMARY t1 ALL NULL NULL NULL NULL 2 Using where
|
||||
2 DEPENDENT SUBQUERY t2 index_subquery PRIMARY,c c 5 func 1 Using index; Using where
|
||||
set @show_explain_probe_select_id=1;
|
||||
set debug_dbug='d,show_explain_probe_join_exec_start';
|
||||
SELECT SUM(a + SLEEP(0.1)) FROM t1 WHERE a IN ( SELECT c FROM t2 WHERE d < b ) OR b < 's';
|
||||
show explain for $thr2;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 PRIMARY t1 ALL NULL NULL NULL NULL 2 Using where
|
||||
2 DEPENDENT SUBQUERY t2 index_subquery PRIMARY,c c 5 func 1 Using index; Using where
|
||||
Warnings:
|
||||
Note 1003 SELECT SUM(a + SLEEP(0.1)) FROM t1 WHERE a IN ( SELECT c FROM t2 WHERE d < b ) OR b < 's'
|
||||
SUM(a + SLEEP(0.1))
|
||||
7862
|
||||
set debug_dbug='';
|
||||
drop table t1, t2;
|
||||
# End
|
||||
drop table t0;
|
||||
|
@ -947,5 +947,32 @@ set debug_dbug='';
|
||||
|
||||
drop table t1;
|
||||
|
||||
drop table t0;
|
||||
--echo #
|
||||
--echo # MDEV-408: SHOW EXPLAIN: Some values are chopped off in SHOW EXPLAIN output
|
||||
--echo #
|
||||
CREATE TABLE t1 (a INT, b VARCHAR(35)) ENGINE=InnoDB;
|
||||
INSERT INTO t1 VALUES (3989,'Abilene'),(3873,'Akron');
|
||||
|
||||
CREATE TABLE t2 (c INT, d VARCHAR(52) PRIMARY KEY, KEY(c)) ENGINE=InnoDB;
|
||||
INSERT INTO t2 VALUES (86,'English'),(87,'Russian');
|
||||
|
||||
explain SELECT SUM(a + SLEEP(0.1)) FROM t1 WHERE a IN ( SELECT c FROM t2 WHERE d < b ) OR b < 's';
|
||||
|
||||
set @show_explain_probe_select_id=1;
|
||||
set debug_dbug='d,show_explain_probe_join_exec_start';
|
||||
--send
|
||||
SELECT SUM(a + SLEEP(0.1)) FROM t1 WHERE a IN ( SELECT c FROM t2 WHERE d < b ) OR b < 's';
|
||||
|
||||
connection default;
|
||||
--source include/wait_condition.inc
|
||||
evalp show explain for $thr2;
|
||||
|
||||
connection con1;
|
||||
reap;
|
||||
|
||||
set debug_dbug='';
|
||||
|
||||
drop table t1, t2;
|
||||
|
||||
--echo # End
|
||||
drop table t0;
|
||||
|
@ -8495,11 +8495,11 @@ ST_FIELD_INFO show_explain_fields_info[]=
|
||||
SKIP_OPEN_TABLE},
|
||||
{"table", NAME_CHAR_LEN, MYSQL_TYPE_STRING, 0 /*value*/, MY_I_S_MAYBE_NULL,
|
||||
"table", SKIP_OPEN_TABLE},
|
||||
{"type", 11, MYSQL_TYPE_STRING, 0, MY_I_S_MAYBE_NULL, "type", SKIP_OPEN_TABLE},
|
||||
{"type", 15, MYSQL_TYPE_STRING, 0, MY_I_S_MAYBE_NULL, "type", SKIP_OPEN_TABLE},
|
||||
{"possible_keys", NAME_CHAR_LEN*MAX_KEY, MYSQL_TYPE_STRING, 0/*value*/,
|
||||
MY_I_S_MAYBE_NULL, "possible_keys", SKIP_OPEN_TABLE},
|
||||
{"key", NAME_CHAR_LEN, MYSQL_TYPE_STRING, 0/*value*/, MY_I_S_MAYBE_NULL,
|
||||
"key", SKIP_OPEN_TABLE},
|
||||
{"key", NAME_CHAR_LEN*MAX_KEY, MYSQL_TYPE_STRING, 0/*value*/,
|
||||
MY_I_S_MAYBE_NULL, "key", SKIP_OPEN_TABLE},
|
||||
{"key_len", NAME_CHAR_LEN*MAX_KEY, MYSQL_TYPE_STRING, 0/*value*/,
|
||||
MY_I_S_MAYBE_NULL, "key_len", SKIP_OPEN_TABLE},
|
||||
{"ref", NAME_CHAR_LEN*MAX_REF_PARTS, MYSQL_TYPE_STRING, 0/*value*/,
|
||||
|
Loading…
x
Reference in New Issue
Block a user