94 lines
2.8 KiB
Plaintext
94 lines
2.8 KiB
Plaintext
--source include/have_ndb.inc
|
|
--source include/have_log_bin.inc
|
|
--source suite/ndb/include/backup_restore_setup.inc
|
|
|
|
--disable_warnings
|
|
DROP TABLE IF EXISTS t1;
|
|
--enable_warnings
|
|
|
|
set @is_enable_default = @@global.ndb_index_stat_enable;
|
|
let is_table_exists = `select count(*) <> 2 from information_schema.tables where table_name in ('ndb_index_stat_head', 'ndb_index_stat_sample') and table_schema='mysql'`;
|
|
|
|
set @is_enable = 1;
|
|
source ndb_index_stat_enable.inc;
|
|
|
|
create table t1 (
|
|
a int primary key,
|
|
b int,
|
|
c int,
|
|
key t1x1 (b),
|
|
key t1x2 (c)
|
|
) engine=ndb
|
|
partition by key (a) partitions 1;
|
|
|
|
insert into t1 values (1,1,1),(2,1,1),(3,2,1),(4,2,1);
|
|
analyze table t1;
|
|
|
|
# put some entries into index stats cache
|
|
select count(*) from t1 where b = 1;
|
|
select count(*) from t1 where c = 1;
|
|
show status like 'ndb_index_stat_cache%';
|
|
|
|
# fetch current backup id to be able to restore it after initital restart
|
|
--disable_query_log
|
|
--source include/ndb_backup_id.inc
|
|
--enable_query_log
|
|
|
|
--echo # restart cluster --initial
|
|
--exec $NDB_MGM --no-defaults -e "all restart -i -n" >> $NDB_TOOLS_OUTPUT
|
|
--exec $NDB_WAITER --no-defaults --ndb-connectstring="$NDB_CONNECTSTRING" --not-started >> $NDB_TOOLS_OUTPUT
|
|
--exec $NDB_MGM --no-defaults -e "all start" >> $NDB_TOOLS_OUTPUT
|
|
--exec $NDB_WAITER --no-defaults --ndb-connectstring="$NDB_CONNECTSTRING" >> $NDB_TOOLS_OUTPUT
|
|
|
|
# now make a backup with explicit id to restore the backup id after initial start
|
|
--inc $the_backup_id
|
|
--exec $NDB_MGM --no-defaults -e "start backup $the_backup_id" >> $NDB_TOOLS_OUTPUT
|
|
|
|
--echo # wait for mysqld
|
|
--source include/ndb_not_readonly.inc
|
|
# wait for stats thread to re-initialize
|
|
--source include/ndb_index_stat_wait.inc
|
|
|
|
--error 0,1193
|
|
set global ndb_dbg_check_shares=1;
|
|
|
|
--error 0,1051
|
|
drop table if exists t1;
|
|
|
|
create table t1 (
|
|
a int primary key,
|
|
b int,
|
|
c int,
|
|
key t1x1 (b),
|
|
key t1x2 (c)
|
|
) engine=ndb
|
|
partition by key (a) partitions 1;
|
|
|
|
insert into t1 values (1,1,1),(2,1,1),(3,2,1),(4,2,1);
|
|
analyze table t1;
|
|
|
|
# put some entries into index stats cache
|
|
select count(*) from t1 where b = 1;
|
|
select count(*) from t1 where c = 1;
|
|
show status like 'ndb_index_stat_cache%';
|
|
|
|
drop table t1;
|
|
|
|
set @is_enable = @is_enable_default;
|
|
source ndb_index_stat_enable.inc;
|
|
|
|
|
|
# Ignore the warning generated by ndbcluster's binlog thread
|
|
# when cluster is restarted
|
|
--disable_query_log ONCE
|
|
call mtr.add_suppression("cluster disconnect An incident event has been written");
|
|
|
|
# Ignore the warning generated by ndbcluster's binlog thread
|
|
# when cluster is restarted - also on the second mysqld
|
|
connect(mysqld2,127.0.0.1,root,,test,$MASTER_MYPORT1);
|
|
connection mysqld2;
|
|
--disable_query_log ONCE
|
|
call mtr.add_suppression("cluster disconnect An incident event has been written");
|
|
--source suite/ndb/include/backup_restore_cleanup.inc
|
|
--remove_file $NDB_TOOLS_OUTPUT
|