polardbxengine/mysql-test/suite/ndb/t/ndbinfo_backup.test

76 lines
2.2 KiB
Plaintext

--source include/have_ndb.inc
--source have_ndb_error_insert.inc
-- source suite/ndb/include/backup_restore_setup.inc
create table t1(id int primary key, val blob) engine=ndb;
--disable_query_log
let $i= 100;
while ($i)
{
eval INSERT INTO t1 values ($i, REPEAT('$i', 1000));
dec $i;
}
--enable_query_log
--echo "Backup not started, ndbinfo should show zero backup buffer usage"
select count(*) from ndbinfo.logbuffers where log_type like "BACKUP%" and used > 0;
--exec $NDB_MGM -e "ALL ERROR 10039" >> $NDB_TOOLS_OUTPUT
--exec $NDB_MGM -e "start backup wait started" >> $NDB_TOOLS_OUTPUT
--echo "Backup started, ndbinfo should show backup buffer usage"
select count(*) from ndbinfo.logbuffers where log_type like "BACKUP%";
let $data_buf_usage_before =
`select used from ndbinfo.logbuffers
where node_id = 1 and log_type like 'BACKUP-DATA'`;
let $log_buf_usage_before =
`select used from ndbinfo.logbuffers
where node_id = 1 and log_type like 'BACKUP-LOG'`;
--echo "Backup data buffer and backup log buffer should not be empty"
if (!$data_buf_usage_before)
{
die The backup data buffer usage should not be zero;
}
if (!$log_buf_usage_before)
{
die The backup log buffer usage should not be zero;
}
update t1 set val = REPEAT('x', 1000) where id < 25;
let $log_buf_usage_after =
`select used from ndbinfo.logbuffers
where node_id = 1 and log_type like 'BACKUP-LOG'`;
--echo "Backup log buffer usage should increase due to UPDATE ops during backup"
if ($log_buf_usage_after == $log_buf_usage_before)
{
die The backup log buffer usage failed to increase when UPDATES were executed;
}
# Resume backup
--exec $NDB_MGM -e "ALL ERROR 0" >> $NDB_TOOLS_OUTPUT
# Drop table won't go through until the backup is completed.
# Retry DROP TABLE in a loop with a gap of one second between
# successive attempts until backup completes, at which point
# the DROP TABLE will succeed.
--disable_query_log
let $mysql_errno = ER_GET_ERRMSG;
while($mysql_errno)
{
sleep 1;
--error 0,1306
drop table t1;
}
--enable_query_log
--echo "Backup complete, backup buffer usage should return to zero"
select count(*) from ndbinfo.logbuffers where log_type like "BACKUP%" and used > 0;
--source suite/ndb/include/backup_restore_cleanup.inc
--remove_file $NDB_TOOLS_OUTPUT