MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ndb_index_stat_enable.inc
1 # turn ndb_index_stat_enable ON or OFF
2 # caller sets @is_enable 0/1
3 # based on global variable, local follows global
4 # do nothing if value is already correct
5 # setting OFF drops stats tables to avoid MTR diff
6 
7 let is_enable_on = `select @is_enable and not @@global.ndb_index_stat_enable`;
8 let is_enable_off = `select not @is_enable and @@global.ndb_index_stat_enable`;
9 set @is_enable = NULL;
10 
11 --echo # is_enable_on=$is_enable_on is_enable_off=$is_enable_off
12 
13 --echo # ndb_index_stat_enable - before
14 show global variables like 'ndb_index_stat_enable';
15 show local variables like 'ndb_index_stat_enable';
16 
17 if ($is_enable_on)
18 {
19  # first global
20  eval set @@global.ndb_index_stat_enable = 1;
21  eval set @@local.ndb_index_stat_enable = 1;
22 
23  # stats thread creates stats tables
24 }
25 
26 if ($is_enable_off)
27 {
28  # first local
29  eval set @@local.ndb_index_stat_enable = 0;
30  eval set @@global.ndb_index_stat_enable = 0;
31 
32  # stats thread does not (and must not) drop stats tables
33  eval drop table mysql.ndb_index_stat_sample;
34  eval drop table mysql.ndb_index_stat_head;
35 }
36 
37 --echo # ndb_index_stat_enable - after
38 show global variables like 'ndb_index_stat_enable';
39 show local variables like 'ndb_index_stat_enable';