Commit 48e4962c authored by Oleg Smirnov's avatar Oleg Smirnov

MDEV-29298 INSERT ... SELECT Does not produce an optimizer trace

Add INSERT ... SELECT to the list of commands that can be traced

Approved by Sergei Petrunia (sergey@mariadb.com)
parent 5b0a4159
......@@ -9231,5 +9231,17 @@ json_detailed(json_extract(trace, '$**.in_to_subquery_conversion'))
]
set in_predicate_conversion_threshold=@tmp;
drop table t0;
#
# MDEV-29298: INSERT ... SELECT Does not produce an optimizer trace
#
create table t1 (a int, b int);
create table t2 (a int, b int);
insert into t1 values (1,1), (2,2), (3,3), (4,4), (5,5);
set optimizer_trace=1;
insert into t2 select * from t1 where a<= b and a>4;
select QUERY, LENGTH(trace)>1 from information_schema.optimizer_trace;
QUERY LENGTH(trace)>1
insert into t2 select * from t1 where a<= b and a>4 1
drop table t1, t2;
# End of 10.5 tests
set optimizer_trace='enabled=off';
......@@ -861,5 +861,19 @@ set in_predicate_conversion_threshold=@tmp;
drop table t0;
--enable_view_protocol
--echo #
--echo # MDEV-29298: INSERT ... SELECT Does not produce an optimizer trace
--echo #
create table t1 (a int, b int);
create table t2 (a int, b int);
insert into t1 values (1,1), (2,2), (3,3), (4,4), (5,5);
set optimizer_trace=1;
insert into t2 select * from t1 where a<= b and a>4;
select QUERY, LENGTH(trace)>1 from information_schema.optimizer_trace;
drop table t1, t2;
--echo # End of 10.5 tests
set optimizer_trace='enabled=off';
......@@ -103,7 +103,8 @@ inline bool sql_command_can_be_traced(enum enum_sql_command sql_command)
sql_command == SQLCOM_UPDATE ||
sql_command == SQLCOM_DELETE ||
sql_command == SQLCOM_DELETE_MULTI ||
sql_command == SQLCOM_UPDATE_MULTI;
sql_command == SQLCOM_UPDATE_MULTI ||
sql_command == SQLCOM_INSERT_SELECT;
}
void opt_trace_print_expanded_query(THD *thd, SELECT_LEX *select_lex,
......
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