Browse Source

MDEV-31121: ANALYZE statement produces 0 for all timings in embedded server

Timers require my_timer_init() call.
It was made only in mysqld_main(). Call it also from init_embedded_server().
pull/2618/head
Sergei Petrunia 3 years ago
parent
commit
a72b2c3ffb
  1. 2
      libmysqld/lib_sql.cc
  2. 11
      mysql-test/main/analyze_format_json_emb.result
  3. 18
      mysql-test/main/analyze_format_json_emb.test

2
libmysqld/lib_sql.cc

@ -565,6 +565,8 @@ int init_embedded_server(int argc, char **argv, char **groups)
if (ho_error != 0)
return 1;
my_timer_init(&sys_timer_info);
if (init_common_variables())
{
mysql_server_end();

11
mysql-test/main/analyze_format_json_emb.result

@ -0,0 +1,11 @@
#
# MDEV-31121: ANALYZE statement produces 0 for all timings in embedded serve
#
create table t1 (a int);
insert into t1 values (0),(0);
set @js='$out';
set @out=(select json_extract(@js,'$**.query_block.r_total_time_ms'));
select cast(json_extract(@out,'$[0]') as DOUBLE) > 0;
cast(json_extract(@out,'$[0]') as DOUBLE) > 0
1
drop table t1;

18
mysql-test/main/analyze_format_json_emb.test

@ -0,0 +1,18 @@
--source include/is_embedded.inc
--source include/big_test.inc
--echo #
--echo # MDEV-31121: ANALYZE statement produces 0 for all timings in embedded serve
--echo #
create table t1 (a int);
insert into t1 values (0),(0);
let $out=`
analyze format=json select sleep(1+a) from t1
`;
evalp set @js='$out';
set @out=(select json_extract(@js,'$**.query_block.r_total_time_ms'));
select cast(json_extract(@out,'$[0]') as DOUBLE) > 0;
drop table t1;
Loading…
Cancel
Save