polardbxengine/mysql-test/suite/ndb_ddl/util_tables_drop.test

46 lines
1.5 KiB
Plaintext

--source connect.inc
#
# Test behavior of ndbcluster and in particular the "ndb binlog thread"
# when its util tables are dropped from NDB.
# - the tables are vital for the functionality of binlog and schema distribution
# - currently there are three util tables created by ndbcluster:
# 1) mysql.ndb_schema
# -- communication between the MySQL Servers during schema distribution
# -- hidden for both DDL and DML for a MySQL Server user
# 2) mysql.ndb_schema_result
# -- communication between the MySQL Servers during schema distribution
# -- hidden for both DDL and DML for a MySQL Server user
# 3) mysql.ndb_apply_status
# -- keeps a record of the operations that have been replicated
# -- currently not hidden for either DDL or DML for a MySQL Server user
# - if any of the tables are dropped from NDB, the "ndb binlog thread" will
# have a "hickup", which means it will:
# -- stop logging changes from NDB
# -- write error message(s) to log file
# -- tear everything down and restart itself
# -- create the tables again
#
# Silence the expected errors written when "ndb binlog thread" is restarted
# due to the util table drop
--disable_query_log
let $i = $NUM_MYSQLDS;
while($i)
{
--connection mysqld$i
call mtr.add_suppression("An incident event has been written");
dec $i;
}
--enable_query_log
let $util_table_name = ndb_schema;
--source check_util_table_drop.inc
let $util_table_name = ndb_apply_status;
--source check_util_table_drop.inc
let $util_table_name = ndb_schema_result;
--source check_util_table_drop.inc