diff options
Diffstat (limited to 'mysql-test/include/mtr_check.sql')
-rw-r--r-- | mysql-test/include/mtr_check.sql | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/mysql-test/include/mtr_check.sql b/mysql-test/include/mtr_check.sql new file mode 100644 index 00000000000..12cb2c870a2 --- /dev/null +++ b/mysql-test/include/mtr_check.sql @@ -0,0 +1,59 @@ +delimiter ||; + +use mtr|| + +-- +-- Procedure used to check if server has been properly +-- restored after testcase has been run +-- +CREATE DEFINER=root@localhost PROCEDURE check_testcase() +BEGIN + + -- Dump all global variables except those + -- that are supposed to change + SELECT * FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES + WHERE variable_name != 'timestamp' ORDER BY VARIABLE_NAME; + + -- Dump all databases, there should be none + -- except those that was created during bootstrap + SELECT * FROM INFORMATION_SCHEMA.SCHEMATA; + + -- The test database should not contain any tables + SELECT table_name AS tables_in_test FROM INFORMATION_SCHEMA.TABLES + WHERE table_schema='test'; + + -- Show "mysql" database, tables and columns + SELECT CONCAT(table_schema, '.', table_name) AS tables_in_mysql + FROM INFORMATION_SCHEMA.TABLES + WHERE table_schema='mysql' AND table_name != 'ndb_apply_status' + ORDER BY tables_in_mysql; + SELECT CONCAT(table_schema, '.', table_name) AS columns_in_mysql, + column_name, ordinal_position, column_default, is_nullable, + data_type, character_maximum_length, character_octet_length, + numeric_precision, numeric_scale, character_set_name, + collation_name, column_type, column_key, extra, column_comment + FROM INFORMATION_SCHEMA.COLUMNS + WHERE table_schema='mysql' AND table_name != 'ndb_apply_status' + ORDER BY columns_in_mysql; + + -- Checksum system tables to make sure they have been properly + -- restored after test + checksum table + mysql.columns_priv, + mysql.db, + mysql.func, + mysql.help_category, + mysql.help_keyword, + mysql.help_relation, + mysql.host, + mysql.proc, + mysql.procs_priv, + mysql.tables_priv, + mysql.time_zone, + mysql.time_zone_leap_second, + mysql.time_zone_name, + mysql.time_zone_transition, + mysql.time_zone_transition_type, + mysql.user; + +END|| |