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

120 lines
3.9 KiB
Plaintext

######################################################################
# Test restoring backups of older/packed formats
######################################################################
-- source include/have_ndb.inc
# This test currently requires case sensitive file system as the tables
# are originally stored with uppercase
-- source include/have_case_sensitive_file_system.inc
-- source suite/ndb/include/backup_restore_setup.inc
#
# Bug #18594 ndb_restore log boken in 5.1
#
CREATE DATABASE BANK default charset=latin1 default collate=latin1_bin;
--exec $NDB_RESTORE -b 1 -n 1 -p 1 -m -r $NDB_SAVED_BACKUPS/51 >> $NDB_TOOLS_OUTPUT
--exec $NDB_RESTORE -e -b 1 -n 2 -p 1 -r $NDB_SAVED_BACKUPS/51 >> $NDB_TOOLS_OUTPUT
USE BANK;
SHOW CREATE TABLE ACCOUNT_TYPE;
SELECT * FROM GL ORDER BY TIME,ACCOUNT_TYPE;
SELECT * FROM ACCOUNT ORDER BY ACCOUNT_ID;
SELECT COUNT(*) FROM TRANSACTION;
SELECT * FROM SYSTEM_VALUES ORDER BY SYSTEM_VALUES_ID;
SELECT * FROM mysql.ndb_apply_status WHERE server_id=0;
# Check that force varpart is set by ndb_restore
let $show_varpart_db=BANK;
let $show_varpart_table=GL;
--source show_varpart.inc
let $show_varpart_db=BANK;
let $show_varpart_table=ACCOUNT;
--source show_varpart.inc
let $show_varpart_db=BANK;
let $show_varpart_table=TRANSACTION;
--source show_varpart.inc
let $show_varpart_db=BANK;
let $show_varpart_table=SYSTEM_VALUES;
--source show_varpart.inc
let $show_varpart_db=BANK;
let $show_varpart_table=ACCOUNT_TYPE;
--source show_varpart.inc
#
# verify restore of 5.0 backup
# here we must use the already created tables as restoring the old
# table definitions will not work
#
TRUNCATE GL;
TRUNCATE ACCOUNT;
TRUNCATE TRANSACTION;
TRUNCATE SYSTEM_VALUES;
TRUNCATE ACCOUNT_TYPE;
# Check that force varpart is not changed by truncate
let $show_varpart_db=BANK;
let $show_varpart_table=GL;
--source show_varpart.inc
let $show_varpart_db=BANK;
let $show_varpart_table=ACCOUNT;
--source show_varpart.inc
let $show_varpart_db=BANK;
let $show_varpart_table=TRANSACTION;
--source show_varpart.inc
let $show_varpart_db=BANK;
let $show_varpart_table=SYSTEM_VALUES;
--source show_varpart.inc
let $show_varpart_db=BANK;
let $show_varpart_table=ACCOUNT_TYPE;
--source show_varpart.inc
# Restore data
--exec $NDB_RESTORE -b 1 -n 1 -p 1 -r $NDB_SAVED_BACKUPS/50 >> $NDB_TOOLS_OUTPUT
--exec $NDB_RESTORE -e -b 1 -n 2 -p 1 -r $NDB_SAVED_BACKUPS/50 >> $NDB_TOOLS_OUTPUT
# Check data
SELECT * FROM GL ORDER BY TIME,ACCOUNT_TYPE;
SELECT * FROM ACCOUNT ORDER BY ACCOUNT_ID;
SELECT COUNT(*) FROM TRANSACTION;
SELECT * FROM SYSTEM_VALUES ORDER BY SYSTEM_VALUES_ID;
SELECT * FROM mysql.ndb_apply_status WHERE server_id=0;
--exec $NDB_RESTORE -b 2 -n 1 -m -p 1 -s -r $NDB_SAVED_BACKUPS/50 >> $NDB_TOOLS_OUTPUT
--exec $NDB_RESTORE -b 2 -n 2 -p 1 -s -r $NDB_SAVED_BACKUPS/50 >> $NDB_TOOLS_OUTPUT
let $show_attributes_db=BANK;
let $show_attributes_table=DESCRIPTION;
--source show_attributes.inc
# Check backup in read-packed format
DROP TABLE GL;
DROP TABLE ACCOUNT;
DROP TABLE TRANSACTION;
DROP TABLE SYSTEM_VALUES;
DROP TABLE ACCOUNT_TYPE;
--exec $NDB_RESTORE -b 1 -n 2 -m $NDB_SAVED_BACKUPS/packed >> $NDB_TOOLS_OUTPUT
--exec $NDB_RESTORE -b 1 -n 2 -p 1 -r $NDB_SAVED_BACKUPS/packed >> $NDB_TOOLS_OUTPUT
SELECT * FROM GL ORDER BY TIME,ACCOUNT_TYPE;
SELECT * FROM ACCOUNT ORDER BY ACCOUNT_ID;
SELECT COUNT(*) FROM TRANSACTION;
SELECT * FROM SYSTEM_VALUES ORDER BY SYSTEM_VALUES_ID;
DROP DATABASE BANK;
USE test;
# hugo generated data...
select a,b,hex(b0),hex(b1),hex(b2),hex(b3),b4,hex(b5),b6,hex(b7) from t1 order by 1,2;
drop table t1;
# bug#54613
--error 1
--exec $NDB_RESTORE -b 2 -n 2 -m --core-file=0 --include-databases=ham --skip-unknown-objects $NDB_SAVED_BACKUPS/bug54613 >> $NDB_TOOLS_OUTPUT
--error 0
--exec $NDB_RESTORE -b 2 -n 2 -m --core-file=0 --include-databases=ham --skip-unknown-objects --skip-broken-objects $NDB_SAVED_BACKUPS/bug54613 >> $NDB_TOOLS_OUTPUT
--remove_file $NDB_TOOLS_OUTPUT