Commit 94dc0bff authored by Sergei Petrunia's avatar Sergei Petrunia

Merge MDEV-27021, MDEV-10000 into 10.9

MDEV-27021: Extend SHOW EXPLAIN to support SHOW ANALYZE [FORMAT=JSON]
MDEV-10000: EXPLAIN FOR CONNECTION syntax support
parents 51b28b24 8db9aa49
# The time on ANALYSE FORMAT=JSON is rather variable # The time on ANALYSE FORMAT=JSON is rather variable
--replace_regex /("(r_total_time_ms|r_table_time_ms|r_other_time_ms|r_buffer_size|r_filling_time_ms)": )[^, \n]*/\1"REPLACED"/ --replace_regex /("(r_total_time_ms|r_table_time_ms|r_other_time_ms|r_buffer_size|r_filling_time_ms|r_query_time_in_progress_ms)": )[^, \n]*/\1"REPLACED"/
...@@ -1715,7 +1715,7 @@ performance-schema-max-socket-classes 10 ...@@ -1715,7 +1715,7 @@ performance-schema-max-socket-classes 10
performance-schema-max-socket-instances -1 performance-schema-max-socket-instances -1
performance-schema-max-sql-text-length 1024 performance-schema-max-sql-text-length 1024
performance-schema-max-stage-classes 160 performance-schema-max-stage-classes 160
performance-schema-max-statement-classes 221 performance-schema-max-statement-classes 222
performance-schema-max-statement-stack 10 performance-schema-max-statement-stack 10
performance-schema-max-table-handles -1 performance-schema-max-table-handles -1
performance-schema-max-table-instances -1 performance-schema-max-table-instances -1
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -9,18 +9,30 @@ insert into t1 select A.a + 10*B.a + 100*C.a from t0 A, t0 B, t0 C; ...@@ -9,18 +9,30 @@ insert into t1 select A.a + 10*B.a + 100*C.a from t0 A, t0 B, t0 C;
alter table t1 add b int, add c int, add filler char(32); alter table t1 add b int, add c int, add filler char(32);
update t1 set b=a, c=a, filler='fooo'; update t1 set b=a, c=a, filler='fooo';
alter table t1 add key(a), add key(b); alter table t1 add key(a), add key(b);
show explain for;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 1
explain for connection;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 1
show explain for 2000000000; show explain for 2000000000;
ERROR HY000: Unknown thread id: 2000000000 ERROR HY000: Unknown thread id: 2000000000
explain for connection 2000000000;
ERROR HY000: Unknown thread id: 2000000000
show explain for (select max(a) from t0); show explain for (select max(a) from t0);
ERROR HY000: You may only use constant expressions in this statement ERROR HY000: You may only use constant expressions in this statement
explain for connection (select max(a) from t0);
ERROR HY000: You may only use constant expressions in this statement
connect con1, localhost, root,,; connect con1, localhost, root,,;
connection con1; connection con1;
SET @old_debug= @@session.debug; SET @old_debug= @@session.debug;
connection default; connection default;
show explain for $thr2; show explain for $thr2;
ERROR HY000: Target is not running an EXPLAINable command ERROR HY000: Target is not executing an operation with a query plan
explain for connection $thr2;
ERROR HY000: Target is not executing an operation with a query plan
show explain for $thr1; show explain for $thr1;
ERROR HY000: Target is not running an EXPLAINable command ERROR HY000: Target is not executing an operation with a query plan
explain for connection $thr1;
ERROR HY000: Target is not executing an operation with a query plan
connection con1; connection con1;
set @show_explain_probe_select_id=1; set @show_explain_probe_select_id=1;
SET debug_dbug='+d,show_explain_probe_join_exec_start'; SET debug_dbug='+d,show_explain_probe_join_exec_start';
...@@ -44,6 +56,16 @@ Note 1003 select max(c) from t1 where a < 10 ...@@ -44,6 +56,16 @@ Note 1003 select max(c) from t1 where a < 10
connection con1; connection con1;
max(c) max(c)
9 9
select max(c) from t1 where a < 10;
connection default;
explain for connection $thr2;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range a a 5 NULL 10 Using index condition
Warnings:
Note 1003 select max(c) from t1 where a < 10
connection con1;
max(c)
9
# We can catch EXPLAIN, too. # We can catch EXPLAIN, too.
set @show_expl_tmp= @@optimizer_switch; set @show_expl_tmp= @@optimizer_switch;
set optimizer_switch='index_condition_pushdown=on,mrr=on,mrr_sort_keys=on'; set optimizer_switch='index_condition_pushdown=on,mrr=on,mrr_sort_keys=on';
...@@ -57,6 +79,17 @@ Note 1003 explain select max(c) from t1 where a < 10 ...@@ -57,6 +79,17 @@ Note 1003 explain select max(c) from t1 where a < 10
connection con1; connection con1;
id select_type table type possible_keys key key_len ref rows Extra id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range a a 5 NULL 10 Using index condition; Rowid-ordered scan 1 SIMPLE t1 range a a 5 NULL 10 Using index condition; Rowid-ordered scan
# Same for EXPLAIN FOR CONNECTION
explain select max(c) from t1 where a < 10;
connection default;
explain for connection $thr2;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range a a 5 NULL 10 Using index condition; Rowid-ordered scan
Warnings:
Note 1003 explain select max(c) from t1 where a < 10
connection con1;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 range a a 5 NULL 10 Using index condition; Rowid-ordered scan
set optimizer_switch= @show_expl_tmp; set optimizer_switch= @show_expl_tmp;
SET debug_dbug=@old_debug; SET debug_dbug=@old_debug;
# UNION, first branch # UNION, first branch
...@@ -78,7 +111,7 @@ id select_type table type possible_keys key key_len ref rows Extra ...@@ -78,7 +111,7 @@ id select_type table type possible_keys key key_len ref rows Extra
NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL
SET debug_dbug=@old_debug; SET debug_dbug=@old_debug;
# UNION, second branch # UNION, second branch
set @show_explain_probe_select_id=1; set @show_explain_probe_select_id=2;
SET debug_dbug='+d,show_explain_probe_join_exec_start'; SET debug_dbug='+d,show_explain_probe_join_exec_start';
explain select a from t0 A union select a+1 from t0 B; explain select a from t0 A union select a+1 from t0 B;
connection default; connection default;
...@@ -144,17 +177,18 @@ SET debug_dbug=@old_debug; ...@@ -144,17 +177,18 @@ SET debug_dbug=@old_debug;
# correlated subquery, explain # correlated subquery, explain
set @show_explain_probe_select_id=1; set @show_explain_probe_select_id=1;
SET debug_dbug='+d,show_explain_probe_join_exec_start'; SET debug_dbug='+d,show_explain_probe_join_exec_start';
select a, (select max(a) from t0 b where b.a+a.a<10) from t0 a where a<1; explain select a, (select max(a) from t0 b where b.a+a.a<10) from t0 a where a<1;
connection default; connection default;
show explain for $thr2; show explain for $thr2;
id select_type table type possible_keys key key_len ref rows Extra id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY a ALL NULL NULL NULL NULL 10 Using where 1 PRIMARY a ALL NULL NULL NULL NULL 10 Using where
2 DEPENDENT SUBQUERY b ALL NULL NULL NULL NULL 10 Using where 2 DEPENDENT SUBQUERY b ALL NULL NULL NULL NULL 10 Using where
Warnings: Warnings:
Note 1003 select a, (select max(a) from t0 b where b.a+a.a<10) from t0 a where a<1 Note 1003 explain select a, (select max(a) from t0 b where b.a+a.a<10) from t0 a where a<1
connection con1; connection con1;
a (select max(a) from t0 b where b.a+a.a<10) id select_type table type possible_keys key key_len ref rows Extra
0 9 1 PRIMARY a ALL NULL NULL NULL NULL 10 Using where
2 DEPENDENT SUBQUERY b ALL NULL NULL NULL NULL 10 Using where
SET debug_dbug=@old_debug; SET debug_dbug=@old_debug;
# correlated subquery, select, while inside the subquery # correlated subquery, select, while inside the subquery
set @show_explain_probe_select_id=2; set @show_explain_probe_select_id=2;
...@@ -209,7 +243,7 @@ SET debug_dbug='+d,show_explain_probe_join_exec_start'; ...@@ -209,7 +243,7 @@ SET debug_dbug='+d,show_explain_probe_join_exec_start';
set @foo= (select max(a) from t0 where sin(a) >0); set @foo= (select max(a) from t0 where sin(a) >0);
connection default; connection default;
show explain for $thr2; show explain for $thr2;
ERROR HY000: Target is not running an EXPLAINable command ERROR HY000: Target is not executing an operation with a query plan
kill query $thr2; kill query $thr2;
connection con1; connection con1;
ERROR 70100: Query execution was interrupted ERROR 70100: Query execution was interrupted
...@@ -235,6 +269,26 @@ id select_type table type possible_keys key key_len ref rows Extra ...@@ -235,6 +269,26 @@ id select_type table type possible_keys key key_len ref rows Extra
Warnings: Warnings:
Note 1003 update t2 set dummy=0 where (select max(a) from t0 where t2.a + t0.a <3) >3 Note 1003 update t2 set dummy=0 where (select max(a) from t0 where t2.a + t0.a <3) >3
connection con1; connection con1;
#
# EXPLAIN FOR CONNECTION for an UPDATE
#
set @show_explain_probe_select_id=2;
SET debug_dbug='+d,show_explain_probe_join_exec_start';
update t2 set dummy=0 where (select max(a) from t0 where t2.a + t0.a <3) >3 ;
connection default;
explain for connection $thr2;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t2 ALL NULL NULL NULL NULL 2 Using where
2 DEPENDENT SUBQUERY t0 ALL NULL NULL NULL NULL 10 Using where
Warnings:
Note 1003 update t2 set dummy=0 where (select max(a) from t0 where t2.a + t0.a <3) >3
explain for connection $thr2;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t2 ALL NULL NULL NULL NULL 2 Using where
2 DEPENDENT SUBQUERY t0 ALL NULL NULL NULL NULL 10 Using where
Warnings:
Note 1003 update t2 set dummy=0 where (select max(a) from t0 where t2.a + t0.a <3) >3
connection con1;
drop table t2; drop table t2;
SET debug_dbug=@old_debug; SET debug_dbug=@old_debug;
# #
...@@ -261,6 +315,29 @@ connection con1; ...@@ -261,6 +315,29 @@ connection con1;
drop table t2; drop table t2;
SET debug_dbug=@old_debug; SET debug_dbug=@old_debug;
# #
# Attempt EXPLAIN FOR CONNECTION for a DELETE
#
create table t2 as select a as a, a as dummy from t0 limit 2;
set @show_explain_probe_select_id=2;
SET debug_dbug='+d,show_explain_probe_join_exec_start';
delete from t2 where (select max(a) from t0 where t2.a + t0.a <3) >3 ;
connection default;
explain for connection $thr2;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t2 ALL NULL NULL NULL NULL 2 Using where
2 DEPENDENT SUBQUERY t0 ALL NULL NULL NULL NULL 10 Using where
Warnings:
Note 1003 delete from t2 where (select max(a) from t0 where t2.a + t0.a <3) >3
explain for connection $thr2;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t2 ALL NULL NULL NULL NULL 2 Using where
2 DEPENDENT SUBQUERY t0 ALL NULL NULL NULL NULL 10 Using where
Warnings:
Note 1003 delete from t2 where (select max(a) from t0 where t2.a + t0.a <3) >3
connection con1;
drop table t2;
SET debug_dbug=@old_debug;
#
# Multiple SHOW EXPLAIN calls for one select # Multiple SHOW EXPLAIN calls for one select
# #
create table t2 as select a as a, a as dummy from t0 limit 3; create table t2 as select a as a, a as dummy from t0 limit 3;
...@@ -294,6 +371,39 @@ a SUBQ ...@@ -294,6 +371,39 @@ a SUBQ
drop table t2; drop table t2;
SET debug_dbug=@old_debug; SET debug_dbug=@old_debug;
# #
# Multiple EXPLAIN FOR CONNECTION calls for one select
#
create table t2 as select a as a, a as dummy from t0 limit 3;
set @show_explain_probe_select_id=2;
SET debug_dbug='+d,show_explain_probe_join_exec_start';
select t2.a, ((select max(a) from t0 where t2.a + t0.a <3) >3) as SUBQ from t2;
connection default;
explain for connection $thr2;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t2 ALL NULL NULL NULL NULL 3
2 DEPENDENT SUBQUERY t0 ALL NULL NULL NULL NULL 10 Using where
Warnings:
Note 1003 select t2.a, ((select max(a) from t0 where t2.a + t0.a <3) >3) as SUBQ from t2
explain for connection $thr2;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t2 ALL NULL NULL NULL NULL 3
2 DEPENDENT SUBQUERY t0 ALL NULL NULL NULL NULL 10 Using where
Warnings:
Note 1003 select t2.a, ((select max(a) from t0 where t2.a + t0.a <3) >3) as SUBQ from t2
explain for connection $thr2;
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY t2 ALL NULL NULL NULL NULL 3
2 DEPENDENT SUBQUERY t0 ALL NULL NULL NULL NULL 10 Using where
Warnings:
Note 1003 select t2.a, ((select max(a) from t0 where t2.a + t0.a <3) >3) as SUBQ from t2
connection con1;
a SUBQ
0 0
1 0
2 0
drop table t2;
SET debug_dbug=@old_debug;
#
# SHOW EXPLAIN for SELECT ... ORDER BY with "Using filesort" # SHOW EXPLAIN for SELECT ... ORDER BY with "Using filesort"
# #
explain select * from t0 order by a; explain select * from t0 order by a;
...@@ -457,7 +567,7 @@ SET debug_dbug='+d,show_explain_probe_join_exec_end'; ...@@ -457,7 +567,7 @@ SET debug_dbug='+d,show_explain_probe_join_exec_end';
SELECT * FROM v1, t2; SELECT * FROM v1, t2;
connection default; connection default;
show explain for $thr2; show explain for $thr2;
ERROR HY000: Target is not running an EXPLAINable command ERROR HY000: Target is not executing an operation with a query plan
kill query $thr2; kill query $thr2;
connection con1; connection con1;
ERROR 70100: Query execution was interrupted ERROR 70100: Query execution was interrupted
...@@ -1311,6 +1421,20 @@ kill query $thr2; ...@@ -1311,6 +1421,20 @@ kill query $thr2;
connection con1; connection con1;
ERROR 70100: Query execution was interrupted ERROR 70100: Query execution was interrupted
drop table t0,t1,t2; drop table t0,t1,t2;
#
# MDEV-28124: Server crashes in Explain_aggr_filesort::print_json_members
# upon SHOW ANALYZE/EXPLAIN FORMAT=JSON
#
connection con1;
set @show_explain_probe_query= 'SELECT count(*) - count(*) FROM sys.waits_by_user_by_latency';
set debug_dbug='+d,explain_notify_tables_are_closed';
SELECT count(*) - count(*) FROM sys.waits_by_user_by_latency;
connection default;
SHOW EXPLAIN FOR $thr2;
ERROR HY000: Target is not executing an operation with a query plan
connection con1;
count(*) - count(*)
0
# End # End
connection default; connection default;
disconnect con1; disconnect con1;
......
...@@ -44,15 +44,34 @@ alter table t1 add b int, add c int, add filler char(32); ...@@ -44,15 +44,34 @@ alter table t1 add b int, add c int, add filler char(32);
update t1 set b=a, c=a, filler='fooo'; update t1 set b=a, c=a, filler='fooo';
alter table t1 add key(a), add key(b); alter table t1 add key(a), add key(b);
#
# Try to call SHOW EXPLAIN with a missing thread ID
#
--error ER_PARSE_ERROR
show explain for;
#
# Also test MySQL-compatible syntax EXPLAIN FOR CONNECTION which was introduced for MDEV-10000
# #
# Try killing a non-existent thread --error ER_PARSE_ERROR
explain for connection;
#
# Try to call SHOW EXPLAIN/EXPLAIN FOR CONNECTION for a non-existent thread
# #
--error ER_NO_SUCH_THREAD --error ER_NO_SUCH_THREAD
show explain for 2000000000; show explain for 2000000000;
--error ER_NO_SUCH_THREAD
explain for connection 2000000000;
--error ER_SET_CONSTANTS_ONLY --error ER_SET_CONSTANTS_ONLY
show explain for (select max(a) from t0); show explain for (select max(a) from t0);
--error ER_SET_CONSTANTS_ONLY
explain for connection (select max(a) from t0);
# #
# Setup two threads and their ids # Setup two threads and their ids
# #
...@@ -67,14 +86,20 @@ connection default; ...@@ -67,14 +86,20 @@ connection default;
--error ER_TARGET_NOT_EXPLAINABLE --error ER_TARGET_NOT_EXPLAINABLE
evalp show explain for $thr2; evalp show explain for $thr2;
--error ER_TARGET_NOT_EXPLAINABLE
evalp explain for connection $thr2;
# SHOW EXPLAIN FOR <ourselves> # SHOW EXPLAIN FOR <ourselves>
--error ER_TARGET_NOT_EXPLAINABLE --error ER_TARGET_NOT_EXPLAINABLE
evalp show explain for $thr1; evalp show explain for $thr1;
--error ER_TARGET_NOT_EXPLAINABLE
evalp explain for connection $thr1;
let $wait_condition= select State='show_explain_trap' from information_schema.processlist where id=$thr2; let $wait_condition= select State='show_explain_trap' from information_schema.processlist where id=$thr2;
# #
# Test SHOW EXPLAIN for simple queries # Test SHOW EXPLAIN/EXPLAIN FOR CONNECTION for simple queries
# #
connection con1; connection con1;
set @show_explain_probe_select_id=1; set @show_explain_probe_select_id=1;
...@@ -96,6 +121,14 @@ connection con1; ...@@ -96,6 +121,14 @@ connection con1;
reap; reap;
send select max(c) from t1 where a < 10;
connection default;
--source include/wait_condition.inc
evalp explain for connection $thr2;
connection con1;
reap;
--echo # We can catch EXPLAIN, too. --echo # We can catch EXPLAIN, too.
set @show_expl_tmp= @@optimizer_switch; set @show_expl_tmp= @@optimizer_switch;
set optimizer_switch='index_condition_pushdown=on,mrr=on,mrr_sort_keys=on'; set optimizer_switch='index_condition_pushdown=on,mrr=on,mrr_sort_keys=on';
...@@ -105,6 +138,14 @@ connection default; ...@@ -105,6 +138,14 @@ connection default;
evalp show explain for $thr2; evalp show explain for $thr2;
connection con1; connection con1;
reap; reap;
--echo # Same for EXPLAIN FOR CONNECTION
send explain select max(c) from t1 where a < 10;
connection default;
--source include/wait_condition.inc
evalp explain for connection $thr2;
connection con1;
reap;
set optimizer_switch= @show_expl_tmp; set optimizer_switch= @show_expl_tmp;
SET debug_dbug=@old_debug; SET debug_dbug=@old_debug;
...@@ -121,7 +162,7 @@ SET debug_dbug=@old_debug; ...@@ -121,7 +162,7 @@ SET debug_dbug=@old_debug;
--echo # UNION, second branch --echo # UNION, second branch
set @show_explain_probe_select_id=1; set @show_explain_probe_select_id=2;
SET debug_dbug='+d,show_explain_probe_join_exec_start'; SET debug_dbug='+d,show_explain_probe_join_exec_start';
send explain select a from t0 A union select a+1 from t0 B; send explain select a from t0 A union select a+1 from t0 B;
connection default; connection default;
...@@ -169,7 +210,7 @@ SET debug_dbug=@old_debug; ...@@ -169,7 +210,7 @@ SET debug_dbug=@old_debug;
--echo # correlated subquery, explain --echo # correlated subquery, explain
set @show_explain_probe_select_id=1; set @show_explain_probe_select_id=1;
SET debug_dbug='+d,show_explain_probe_join_exec_start'; SET debug_dbug='+d,show_explain_probe_join_exec_start';
send select a, (select max(a) from t0 b where b.a+a.a<10) from t0 a where a<1; send explain select a, (select max(a) from t0 b where b.a+a.a<10) from t0 a where a<1;
connection default; connection default;
--source include/wait_condition.inc --source include/wait_condition.inc
evalp show explain for $thr2; evalp show explain for $thr2;
...@@ -249,9 +290,25 @@ evalp show explain for $thr2; ...@@ -249,9 +290,25 @@ evalp show explain for $thr2;
evalp show explain for $thr2; evalp show explain for $thr2;
connection con1; connection con1;
reap; reap;
--echo #
--echo # EXPLAIN FOR CONNECTION for an UPDATE
--echo #
set @show_explain_probe_select_id=2;
SET debug_dbug='+d,show_explain_probe_join_exec_start';
send update t2 set dummy=0 where (select max(a) from t0 where t2.a + t0.a <3) >3 ;
connection default;
--source include/wait_condition.inc
evalp explain for connection $thr2;
--source include/wait_condition.inc
evalp explain for connection $thr2;
connection con1;
reap;
drop table t2; drop table t2;
SET debug_dbug=@old_debug; SET debug_dbug=@old_debug;
--echo # --echo #
--echo # Attempt SHOW EXPLAIN for a DELETE (UPD: now works) --echo # Attempt SHOW EXPLAIN for a DELETE (UPD: now works)
--echo # --echo #
...@@ -271,6 +328,23 @@ reap; ...@@ -271,6 +328,23 @@ reap;
drop table t2; drop table t2;
SET debug_dbug=@old_debug; SET debug_dbug=@old_debug;
--echo #
--echo # Attempt EXPLAIN FOR CONNECTION for a DELETE
--echo #
create table t2 as select a as a, a as dummy from t0 limit 2;
set @show_explain_probe_select_id=2;
SET debug_dbug='+d,show_explain_probe_join_exec_start';
send delete from t2 where (select max(a) from t0 where t2.a + t0.a <3) >3 ;
connection default;
--source include/wait_condition.inc
evalp explain for connection $thr2;
--source include/wait_condition.inc
evalp explain for connection $thr2;
connection con1;
reap;
drop table t2;
SET debug_dbug=@old_debug;
--echo # --echo #
--echo # Multiple SHOW EXPLAIN calls for one select --echo # Multiple SHOW EXPLAIN calls for one select
--echo # --echo #
...@@ -290,6 +364,26 @@ reap; ...@@ -290,6 +364,26 @@ reap;
drop table t2; drop table t2;
SET debug_dbug=@old_debug; SET debug_dbug=@old_debug;
--echo #
--echo # Multiple EXPLAIN FOR CONNECTION calls for one select
--echo #
create table t2 as select a as a, a as dummy from t0 limit 3;
set @show_explain_probe_select_id=2;
SET debug_dbug='+d,show_explain_probe_join_exec_start';
send select t2.a, ((select max(a) from t0 where t2.a + t0.a <3) >3) as SUBQ from t2;
connection default;
--source include/wait_condition.inc
evalp explain for connection $thr2;
--source include/wait_condition.inc
evalp explain for connection $thr2;
--source include/wait_condition.inc
evalp explain for connection $thr2;
connection con1;
reap;
drop table t2;
SET debug_dbug=@old_debug;
--echo # --echo #
--echo # SHOW EXPLAIN for SELECT ... ORDER BY with "Using filesort" --echo # SHOW EXPLAIN for SELECT ... ORDER BY with "Using filesort"
--echo # --echo #
...@@ -1210,6 +1304,26 @@ reap; ...@@ -1210,6 +1304,26 @@ reap;
drop table t0,t1,t2; drop table t0,t1,t2;
--echo #
--echo # MDEV-28124: Server crashes in Explain_aggr_filesort::print_json_members
--echo # upon SHOW ANALYZE/EXPLAIN FORMAT=JSON
--echo #
let $wait_condition= select State='show_explain_trap' from information_schema.processlist where id=$thr2;
connection con1;
set @show_explain_probe_query= 'SELECT count(*) - count(*) FROM sys.waits_by_user_by_latency';
set debug_dbug='+d,explain_notify_tables_are_closed';
# Statement guarantees to produce 0 on every run
send SELECT count(*) - count(*) FROM sys.waits_by_user_by_latency;
connection default;
--source include/wait_condition.inc
--error ER_TARGET_NOT_EXPLAINABLE
evalp SHOW EXPLAIN FOR $thr2;
connection con1;
reap;
--echo # End --echo # End
connection default; connection default;
disconnect con1; disconnect con1;
......
This diff is collapsed.
This diff is collapsed.
...@@ -2906,6 +2906,96 @@ id select_type table type possible_keys key key_len ref rows Extra ...@@ -2906,6 +2906,96 @@ id select_type table type possible_keys key key_len ref rows Extra
2 DEPENDENT SUBQUERY tn eq_ref PRIMARY PRIMARY 32 test.tms.key1 1 Using where 2 DEPENDENT SUBQUERY tn eq_ref PRIMARY PRIMARY 32 test.tms.key1 1 Using where
set optimizer_switch=@tmp_os; set optimizer_switch=@tmp_os;
drop table t1, t10, t11; drop table t1, t10, t11;
#
# MDEV-28268: Server crashes in Expression_cache_tracker::fetch_current_stats
#
CREATE TABLE t1 (a INT, b INT);
INSERT INTO t1 VALUES (1,2),(3,4);
ANALYZE FORMAT=JSON
SELECT DISTINCT
(SELECT MIN(a) FROM t1 WHERE b <= ANY (SELECT a FROM t1)) AS f
FROM t1;
ANALYZE
{
"query_block": {
"select_id": 1,
"r_loops": 1,
"r_total_time_ms": "REPLACED",
"duplicate_removal": {
"temporary_table": {
"nested_loop": [
{
"table": {
"table_name": "t1",
"access_type": "ALL",
"r_loops": 1,
"rows": 2,
"r_rows": 2,
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"filtered": 100,
"r_filtered": 100
}
}
],
"subqueries": [
{
"expression_cache": {
"state": "disabled",
"r_loops": 0,
"query_block": {
"select_id": 2,
"r_loops": 1,
"r_total_time_ms": "REPLACED",
"nested_loop": [
{
"table": {
"table_name": "t1",
"access_type": "ALL",
"r_loops": 1,
"rows": 2,
"r_rows": 2,
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"filtered": 100,
"r_filtered": 50,
"attached_condition": "<nop>(<in_optimizer>(t1.b,(subquery#3) >= 4))"
}
}
],
"subqueries": [
{
"query_block": {
"select_id": 3,
"r_loops": 1,
"r_total_time_ms": "REPLACED",
"nested_loop": [
{
"table": {
"table_name": "t1",
"access_type": "ALL",
"r_loops": 1,
"rows": 2,
"r_rows": 2,
"r_table_time_ms": "REPLACED",
"r_other_time_ms": "REPLACED",
"filtered": 100,
"r_filtered": 100
}
}
]
}
}
]
}
}
}
]
}
}
}
}
DROP TABLE t1;
# End of 10.2 tests # End of 10.2 tests
# End of 10.3 tests # End of 10.3 tests
# #
......
...@@ -2425,6 +2425,21 @@ set optimizer_switch=@tmp_os; ...@@ -2425,6 +2425,21 @@ set optimizer_switch=@tmp_os;
drop table t1, t10, t11; drop table t1, t10, t11;
--echo #
--echo # MDEV-28268: Server crashes in Expression_cache_tracker::fetch_current_stats
--echo #
CREATE TABLE t1 (a INT, b INT);
INSERT INTO t1 VALUES (1,2),(3,4);
--source include/analyze-format.inc
ANALYZE FORMAT=JSON
SELECT DISTINCT
(SELECT MIN(a) FROM t1 WHERE b <= ANY (SELECT a FROM t1)) AS f
FROM t1;
# Cleanup
DROP TABLE t1;
--echo # End of 10.2 tests --echo # End of 10.2 tests
--echo # End of 10.3 tests --echo # End of 10.3 tests
...@@ -2470,3 +2485,4 @@ select * from t1 where t1.a in (select t2.a from t2 order by t2.b); ...@@ -2470,3 +2485,4 @@ select * from t1 where t1.a in (select t2.a from t2 order by t2.b);
drop table t0, t1, t2; drop table t0, t1, t2;
--echo # End of 10.4 tests --echo # End of 10.4 tests
...@@ -4,7 +4,7 @@ CREATE TABLE t1 (a INT); ...@@ -4,7 +4,7 @@ CREATE TABLE t1 (a INT);
connect con1,localhost,root,,test; connect con1,localhost,root,,test;
INSERT INTO t1 VALUES (1),(2),(3),(4); INSERT INTO t1 VALUES (1),(2),(3),(4);
SHOW EXPLAIN FOR $con1; SHOW EXPLAIN FOR $con1;
ERROR HY000: Target is not running an EXPLAINable command ERROR HY000: Target is not executing an operation with a query plan
connection con1; connection con1;
INSERT INTO t1 VALUES (5),(6),(7),(8); INSERT INTO t1 VALUES (5),(6),(7),(8);
DROP TABLE t1; DROP TABLE t1;
...@@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10 ...@@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
performance_schema_max_socket_instances 1000 performance_schema_max_socket_instances 1000
performance_schema_max_sql_text_length 1024 performance_schema_max_sql_text_length 1024
performance_schema_max_stage_classes 160 performance_schema_max_stage_classes 160
performance_schema_max_statement_classes 221 performance_schema_max_statement_classes 222
performance_schema_max_statement_stack 1 performance_schema_max_statement_stack 1
performance_schema_max_table_handles 1000 performance_schema_max_table_handles 1000
performance_schema_max_table_instances 500 performance_schema_max_table_instances 500
......
...@@ -128,12 +128,12 @@ relative_event_id relative_end_event_id event_name comment nesting_event_type re ...@@ -128,12 +128,12 @@ relative_event_id relative_end_event_id event_name comment nesting_event_type re
11 11 stage/sql/Executing (stage) STATEMENT 0 11 11 stage/sql/Executing (stage) STATEMENT 0
12 12 stage/sql/End of update loop (stage) STATEMENT 0 12 12 stage/sql/End of update loop (stage) STATEMENT 0
13 13 stage/sql/Query end (stage) STATEMENT 0 13 13 stage/sql/Query end (stage) STATEMENT 0
14 14 stage/sql/Commit (stage) STATEMENT 0 14 15 stage/sql/Commit (stage) STATEMENT 0
15 15 stage/sql/closing tables (stage) STATEMENT 0 15 15 wait/synch/mutex/sql/THD::LOCK_thd_kill lock STAGE 14
16 16 stage/sql/Starting cleanup (stage) STATEMENT 0 16 16 stage/sql/closing tables (stage) STATEMENT 0
17 17 stage/sql/Freeing items (stage) STATEMENT 0 17 17 stage/sql/Starting cleanup (stage) STATEMENT 0
18 18 wait/io/socket/sql/client_connection send STATEMENT 0 18 18 stage/sql/Freeing items (stage) STATEMENT 0
19 19 wait/synch/mutex/sql/THD::LOCK_thd_kill lock STATEMENT 0 19 19 wait/io/socket/sql/client_connection send STATEMENT 0
20 21 stage/sql/Reset for next command (stage) STATEMENT 0 20 21 stage/sql/Reset for next command (stage) STATEMENT 0
21 21 wait/synch/mutex/sql/THD::LOCK_thd_data lock STAGE 20 21 21 wait/synch/mutex/sql/THD::LOCK_thd_data lock STAGE 20
22 22 wait/synch/mutex/sql/THD::LOCK_thd_data lock STATEMENT 0 22 22 wait/synch/mutex/sql/THD::LOCK_thd_data lock STATEMENT 0
...@@ -152,12 +152,12 @@ relative_event_id relative_end_event_id event_name comment nesting_event_type re ...@@ -152,12 +152,12 @@ relative_event_id relative_end_event_id event_name comment nesting_event_type re
35 35 stage/sql/Executing (stage) STATEMENT 24 35 35 stage/sql/Executing (stage) STATEMENT 24
36 36 stage/sql/End of update loop (stage) STATEMENT 24 36 36 stage/sql/End of update loop (stage) STATEMENT 24
37 37 stage/sql/Query end (stage) STATEMENT 24 37 37 stage/sql/Query end (stage) STATEMENT 24
38 38 stage/sql/Commit (stage) STATEMENT 24 38 39 stage/sql/Commit (stage) STATEMENT 24
39 39 stage/sql/closing tables (stage) STATEMENT 24 39 39 wait/synch/mutex/sql/THD::LOCK_thd_kill lock STAGE 38
40 40 stage/sql/Starting cleanup (stage) STATEMENT 24 40 40 stage/sql/closing tables (stage) STATEMENT 24
41 41 stage/sql/Freeing items (stage) STATEMENT 24 41 41 stage/sql/Starting cleanup (stage) STATEMENT 24
42 42 wait/io/socket/sql/client_connection send STATEMENT 24 42 42 stage/sql/Freeing items (stage) STATEMENT 24
43 43 wait/synch/mutex/sql/THD::LOCK_thd_kill lock STATEMENT 24 43 43 wait/io/socket/sql/client_connection send STATEMENT 24
44 45 stage/sql/Reset for next command (stage) STATEMENT 24 44 45 stage/sql/Reset for next command (stage) STATEMENT 24
45 45 wait/synch/mutex/sql/THD::LOCK_thd_data lock STAGE 44 45 45 wait/synch/mutex/sql/THD::LOCK_thd_data lock STAGE 44
46 46 wait/synch/mutex/sql/THD::LOCK_thd_data lock STATEMENT 24 46 46 wait/synch/mutex/sql/THD::LOCK_thd_data lock STATEMENT 24
...@@ -176,12 +176,12 @@ relative_event_id relative_end_event_id event_name comment nesting_event_type re ...@@ -176,12 +176,12 @@ relative_event_id relative_end_event_id event_name comment nesting_event_type re
59 59 stage/sql/Executing (stage) STATEMENT 48 59 59 stage/sql/Executing (stage) STATEMENT 48
60 60 stage/sql/End of update loop (stage) STATEMENT 48 60 60 stage/sql/End of update loop (stage) STATEMENT 48
61 61 stage/sql/Query end (stage) STATEMENT 48 61 61 stage/sql/Query end (stage) STATEMENT 48
62 62 stage/sql/Commit (stage) STATEMENT 48 62 63 stage/sql/Commit (stage) STATEMENT 48
63 63 stage/sql/closing tables (stage) STATEMENT 48 63 63 wait/synch/mutex/sql/THD::LOCK_thd_kill lock STAGE 62
64 64 stage/sql/Starting cleanup (stage) STATEMENT 48 64 64 stage/sql/closing tables (stage) STATEMENT 48
65 65 stage/sql/Freeing items (stage) STATEMENT 48 65 65 stage/sql/Starting cleanup (stage) STATEMENT 48
66 66 wait/io/socket/sql/client_connection send STATEMENT 48 66 66 stage/sql/Freeing items (stage) STATEMENT 48
67 67 wait/synch/mutex/sql/THD::LOCK_thd_kill lock STATEMENT 48 67 67 wait/io/socket/sql/client_connection send STATEMENT 48
68 69 stage/sql/Reset for next command (stage) STATEMENT 48 68 69 stage/sql/Reset for next command (stage) STATEMENT 48
69 69 wait/synch/mutex/sql/THD::LOCK_thd_data lock STAGE 68 69 69 wait/synch/mutex/sql/THD::LOCK_thd_data lock STAGE 68
70 70 wait/synch/mutex/sql/THD::LOCK_thd_data lock STATEMENT 48 70 70 wait/synch/mutex/sql/THD::LOCK_thd_data lock STATEMENT 48
...@@ -203,12 +203,12 @@ select "With a third part to make things complete" as payload NULL NULL ...@@ -203,12 +203,12 @@ select "With a third part to make things complete" as payload NULL NULL
84 84 stage/sql/Executing (stage) STATEMENT 72 84 84 stage/sql/Executing (stage) STATEMENT 72
85 85 stage/sql/End of update loop (stage) STATEMENT 72 85 85 stage/sql/End of update loop (stage) STATEMENT 72
86 86 stage/sql/Query end (stage) STATEMENT 72 86 86 stage/sql/Query end (stage) STATEMENT 72
87 87 stage/sql/Commit (stage) STATEMENT 72 87 88 stage/sql/Commit (stage) STATEMENT 72
88 88 stage/sql/closing tables (stage) STATEMENT 72 88 88 wait/synch/mutex/sql/THD::LOCK_thd_kill lock STAGE 87
89 89 stage/sql/Starting cleanup (stage) STATEMENT 72 89 89 stage/sql/closing tables (stage) STATEMENT 72
90 92 stage/sql/Freeing items (stage) STATEMENT 72 90 90 stage/sql/Starting cleanup (stage) STATEMENT 72
91 91 wait/io/socket/sql/client_connection send STAGE 90 91 92 stage/sql/Freeing items (stage) STATEMENT 72
92 92 wait/synch/mutex/sql/THD::LOCK_thd_kill lock STAGE 90 92 92 wait/io/socket/sql/client_connection send STAGE 91
93 110 statement/sql/select select "And this is the second part of a multi query" as payload; 93 110 statement/sql/select select "And this is the second part of a multi query" as payload;
select "With a third part to make things complete" as payload NULL NULL select "With a third part to make things complete" as payload NULL NULL
94 96 stage/sql/starting (stage) STATEMENT 93 94 96 stage/sql/starting (stage) STATEMENT 93
...@@ -222,12 +222,12 @@ select "With a third part to make things complete" as payload NULL NULL ...@@ -222,12 +222,12 @@ select "With a third part to make things complete" as payload NULL NULL
102 102 stage/sql/Executing (stage) STATEMENT 93 102 102 stage/sql/Executing (stage) STATEMENT 93
103 103 stage/sql/End of update loop (stage) STATEMENT 93 103 103 stage/sql/End of update loop (stage) STATEMENT 93
104 104 stage/sql/Query end (stage) STATEMENT 93 104 104 stage/sql/Query end (stage) STATEMENT 93
105 105 stage/sql/Commit (stage) STATEMENT 93 105 106 stage/sql/Commit (stage) STATEMENT 93
106 106 stage/sql/closing tables (stage) STATEMENT 93 106 106 wait/synch/mutex/sql/THD::LOCK_thd_kill lock STAGE 105
107 107 stage/sql/Starting cleanup (stage) STATEMENT 93 107 107 stage/sql/closing tables (stage) STATEMENT 93
108 110 stage/sql/Freeing items (stage) STATEMENT 93 108 108 stage/sql/Starting cleanup (stage) STATEMENT 93
109 109 wait/io/socket/sql/client_connection send STAGE 108 109 110 stage/sql/Freeing items (stage) STATEMENT 93
110 110 wait/synch/mutex/sql/THD::LOCK_thd_kill lock STAGE 108 110 110 wait/io/socket/sql/client_connection send STAGE 109
111 129 statement/sql/select select "With a third part to make things complete" as payload NULL NULL 111 129 statement/sql/select select "With a third part to make things complete" as payload NULL NULL
112 113 stage/sql/starting (stage) STATEMENT 111 112 113 stage/sql/starting (stage) STATEMENT 111
113 113 wait/synch/mutex/sql/THD::LOCK_thd_data lock STAGE 112 113 113 wait/synch/mutex/sql/THD::LOCK_thd_data lock STAGE 112
...@@ -239,12 +239,12 @@ select "With a third part to make things complete" as payload NULL NULL ...@@ -239,12 +239,12 @@ select "With a third part to make things complete" as payload NULL NULL
119 119 stage/sql/Executing (stage) STATEMENT 111 119 119 stage/sql/Executing (stage) STATEMENT 111
120 120 stage/sql/End of update loop (stage) STATEMENT 111 120 120 stage/sql/End of update loop (stage) STATEMENT 111
121 121 stage/sql/Query end (stage) STATEMENT 111 121 121 stage/sql/Query end (stage) STATEMENT 111
122 122 stage/sql/Commit (stage) STATEMENT 111 122 123 stage/sql/Commit (stage) STATEMENT 111
123 123 stage/sql/closing tables (stage) STATEMENT 111 123 123 wait/synch/mutex/sql/THD::LOCK_thd_kill lock STAGE 122
124 124 stage/sql/Starting cleanup (stage) STATEMENT 111 124 124 stage/sql/closing tables (stage) STATEMENT 111
125 125 stage/sql/Freeing items (stage) STATEMENT 111 125 125 stage/sql/Starting cleanup (stage) STATEMENT 111
126 126 wait/io/socket/sql/client_connection send STATEMENT 111 126 126 stage/sql/Freeing items (stage) STATEMENT 111
127 127 wait/synch/mutex/sql/THD::LOCK_thd_kill lock STATEMENT 111 127 127 wait/io/socket/sql/client_connection send STATEMENT 111
128 129 stage/sql/Reset for next command (stage) STATEMENT 111 128 129 stage/sql/Reset for next command (stage) STATEMENT 111
129 129 wait/synch/mutex/sql/THD::LOCK_thd_data lock STAGE 128 129 129 wait/synch/mutex/sql/THD::LOCK_thd_data lock STAGE 128
130 130 wait/synch/mutex/sql/THD::LOCK_thd_data lock STATEMENT 111 130 130 wait/synch/mutex/sql/THD::LOCK_thd_data lock STATEMENT 111
...@@ -263,12 +263,12 @@ select "With a third part to make things complete" as payload NULL NULL ...@@ -263,12 +263,12 @@ select "With a third part to make things complete" as payload NULL NULL
143 143 stage/sql/Executing (stage) STATEMENT 132 143 143 stage/sql/Executing (stage) STATEMENT 132
144 144 stage/sql/End of update loop (stage) STATEMENT 132 144 144 stage/sql/End of update loop (stage) STATEMENT 132
145 145 stage/sql/Query end (stage) STATEMENT 132 145 145 stage/sql/Query end (stage) STATEMENT 132
146 146 stage/sql/Commit (stage) STATEMENT 132 146 147 stage/sql/Commit (stage) STATEMENT 132
147 147 stage/sql/closing tables (stage) STATEMENT 132 147 147 wait/synch/mutex/sql/THD::LOCK_thd_kill lock STAGE 146
148 148 stage/sql/Starting cleanup (stage) STATEMENT 132 148 148 stage/sql/closing tables (stage) STATEMENT 132
149 149 stage/sql/Freeing items (stage) STATEMENT 132 149 149 stage/sql/Starting cleanup (stage) STATEMENT 132
150 150 wait/io/socket/sql/client_connection send STATEMENT 132 150 150 stage/sql/Freeing items (stage) STATEMENT 132
151 151 wait/synch/mutex/sql/THD::LOCK_thd_kill lock STATEMENT 132 151 151 wait/io/socket/sql/client_connection send STATEMENT 132
152 153 stage/sql/Reset for next command (stage) STATEMENT 132 152 153 stage/sql/Reset for next command (stage) STATEMENT 132
153 153 wait/synch/mutex/sql/THD::LOCK_thd_data lock STAGE 152 153 153 wait/synch/mutex/sql/THD::LOCK_thd_data lock STAGE 152
disconnect con1; disconnect con1;
...@@ -255,7 +255,7 @@ performance_schema_max_socket_classes 10 ...@@ -255,7 +255,7 @@ performance_schema_max_socket_classes 10
performance_schema_max_socket_instances 1000 performance_schema_max_socket_instances 1000
performance_schema_max_sql_text_length 1024 performance_schema_max_sql_text_length 1024
performance_schema_max_stage_classes 160 performance_schema_max_stage_classes 160
performance_schema_max_statement_classes 221 performance_schema_max_statement_classes 222
performance_schema_max_statement_stack 10 performance_schema_max_statement_stack 10
performance_schema_max_table_handles 1000 performance_schema_max_table_handles 1000
performance_schema_max_table_instances 500 performance_schema_max_table_instances 500
......
...@@ -57,7 +57,7 @@ performance_schema_max_socket_classes 10 ...@@ -57,7 +57,7 @@ performance_schema_max_socket_classes 10
performance_schema_max_socket_instances 1000 performance_schema_max_socket_instances 1000
performance_schema_max_sql_text_length 1024 performance_schema_max_sql_text_length 1024
performance_schema_max_stage_classes 160 performance_schema_max_stage_classes 160
performance_schema_max_statement_classes 221 performance_schema_max_statement_classes 222
performance_schema_max_statement_stack 10 performance_schema_max_statement_stack 10
performance_schema_max_table_handles 1000 performance_schema_max_table_handles 1000
performance_schema_max_table_instances 500 performance_schema_max_table_instances 500
......
...@@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10 ...@@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
performance_schema_max_socket_instances 1000 performance_schema_max_socket_instances 1000
performance_schema_max_sql_text_length 1024 performance_schema_max_sql_text_length 1024
performance_schema_max_stage_classes 160 performance_schema_max_stage_classes 160
performance_schema_max_statement_classes 221 performance_schema_max_statement_classes 222
performance_schema_max_statement_stack 10 performance_schema_max_statement_stack 10
performance_schema_max_table_handles 1000 performance_schema_max_table_handles 1000
performance_schema_max_table_instances 500 performance_schema_max_table_instances 500
......
...@@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10 ...@@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
performance_schema_max_socket_instances 1000 performance_schema_max_socket_instances 1000
performance_schema_max_sql_text_length 1024 performance_schema_max_sql_text_length 1024
performance_schema_max_stage_classes 160 performance_schema_max_stage_classes 160
performance_schema_max_statement_classes 221 performance_schema_max_statement_classes 222
performance_schema_max_statement_stack 10 performance_schema_max_statement_stack 10
performance_schema_max_table_handles 1000 performance_schema_max_table_handles 1000
performance_schema_max_table_instances 500 performance_schema_max_table_instances 500
......
...@@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10 ...@@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
performance_schema_max_socket_instances 1000 performance_schema_max_socket_instances 1000
performance_schema_max_sql_text_length 1024 performance_schema_max_sql_text_length 1024
performance_schema_max_stage_classes 160 performance_schema_max_stage_classes 160
performance_schema_max_statement_classes 221 performance_schema_max_statement_classes 222
performance_schema_max_statement_stack 10 performance_schema_max_statement_stack 10
performance_schema_max_table_handles 1000 performance_schema_max_table_handles 1000
performance_schema_max_table_instances 500 performance_schema_max_table_instances 500
......
...@@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10 ...@@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
performance_schema_max_socket_instances 1000 performance_schema_max_socket_instances 1000
performance_schema_max_sql_text_length 1024 performance_schema_max_sql_text_length 1024
performance_schema_max_stage_classes 160 performance_schema_max_stage_classes 160
performance_schema_max_statement_classes 221 performance_schema_max_statement_classes 222
performance_schema_max_statement_stack 10 performance_schema_max_statement_stack 10
performance_schema_max_table_handles 1000 performance_schema_max_table_handles 1000
performance_schema_max_table_instances 500 performance_schema_max_table_instances 500
......
...@@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10 ...@@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
performance_schema_max_socket_instances 1000 performance_schema_max_socket_instances 1000
performance_schema_max_sql_text_length 1024 performance_schema_max_sql_text_length 1024
performance_schema_max_stage_classes 160 performance_schema_max_stage_classes 160
performance_schema_max_statement_classes 221 performance_schema_max_statement_classes 222
performance_schema_max_statement_stack 10 performance_schema_max_statement_stack 10
performance_schema_max_table_handles 1000 performance_schema_max_table_handles 1000
performance_schema_max_table_instances 500 performance_schema_max_table_instances 500
......
...@@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10 ...@@ -135,7 +135,7 @@ performance_schema_max_socket_classes 10
performance_schema_max_socket_instances 1000 performance_schema_max_socket_instances 1000
performance_schema_max_sql_text_length 1024 performance_schema_max_sql_text_length 1024
performance_schema_max_stage_classes 160 performance_schema_max_stage_classes 160
performance_schema_max_statement_classes 221 performance_schema_max_statement_classes 222
performance_schema_max_statement_stack 10 performance_schema_max_statement_stack 10
performance_schema_max_table_handles 1000 performance_schema_max_table_handles 1000
performance_schema_max_table_instances 500 performance_schema_max_table_instances 500
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment