EVOLUTION-MANAGER
Edit File: ha.test
# This test tests for ha features if ($USE_HA_TEST) { --disable_warnings --disable_query_log --disable_result_log --source test_init.inc --source ha_test_init.inc --enable_result_log --enable_query_log --echo --echo drop and create databases --connection master_1 DROP DATABASE IF EXISTS auto_test_local; CREATE DATABASE auto_test_local; USE auto_test_local; if ($USE_CHILD_GROUP2) { --connection child2_1 DROP DATABASE IF EXISTS auto_test_remote; CREATE DATABASE auto_test_remote; USE auto_test_remote; --connection child2_2 DROP DATABASE IF EXISTS auto_test_remote2; CREATE DATABASE auto_test_remote2; USE auto_test_remote2; --connection child2_3 DROP DATABASE IF EXISTS auto_test_remote3; CREATE DATABASE auto_test_remote3; USE auto_test_remote3; } if ($USE_CHILD_GROUP3) { --connection child3_1 DROP DATABASE IF EXISTS auto_test_local; CREATE DATABASE auto_test_local; USE auto_test_local; --connection child3_2 DROP DATABASE IF EXISTS auto_test_local; CREATE DATABASE auto_test_local; USE auto_test_local; --connection child3_3 DROP DATABASE IF EXISTS auto_test_local; CREATE DATABASE auto_test_local; USE auto_test_local; } --enable_warnings --echo --echo test select 1 --connection master_1 SELECT 1; if ($USE_CHILD_GROUP2) { if (!$OUTPUT_CHILD_GROUP2) { --disable_query_log --disable_result_log } --connection child2_1 SELECT 1; --connection child2_2 SELECT 1; --connection child2_3 SELECT 1; if (!$OUTPUT_CHILD_GROUP2) { --enable_query_log --enable_result_log } } if ($USE_CHILD_GROUP3) { if (!$OUTPUT_CHILD_GROUP3) { --disable_query_log --disable_result_log } --connection child3_1 SELECT 1; --connection child3_2 SELECT 1; --connection child3_3 SELECT 1; if (!$OUTPUT_CHILD_GROUP3) { --enable_query_log --enable_result_log } } --echo --echo create table test if ($USE_CHILD_GROUP2) { if (!$OUTPUT_CHILD_GROUP2) { --disable_query_log --disable_result_log } --connection child2_1 if ($OUTPUT_CHILD_GROUP2) { --disable_query_log echo CHILD2_1_DROP_TABLES; echo CHILD2_1_CREATE_TABLES; } --disable_warnings eval $CHILD2_1_DROP_TABLES; --enable_warnings eval $CHILD2_1_CREATE_TABLES; if ($OUTPUT_CHILD_GROUP2) { --enable_query_log } if ($USE_GENERAL_LOG) { TRUNCATE TABLE mysql.general_log; } --connection child2_2 if ($OUTPUT_CHILD_GROUP2) { --disable_query_log echo CHILD2_2_DROP_TABLES; echo CHILD2_2_CREATE_TABLES; } --disable_warnings eval $CHILD2_2_DROP_TABLES; --enable_warnings eval $CHILD2_2_CREATE_TABLES; if ($OUTPUT_CHILD_GROUP2) { --enable_query_log } if ($USE_GENERAL_LOG) { TRUNCATE TABLE mysql.general_log; } if (!$OUTPUT_CHILD_GROUP2) { --enable_query_log --enable_result_log } } if ($USE_CHILD_GROUP3) { if (!$OUTPUT_CHILD_GROUP3) { --disable_query_log --disable_result_log } --connection child3_1 --disable_warnings eval $CHILD3_1_DROP_TABLES_HA_2_1; --enable_warnings eval $CHILD3_1_CREATE_TABLES_HA_2_1; --connection child3_2 --disable_warnings eval $CHILD3_2_DROP_TABLES_HA_2_1; --enable_warnings eval $CHILD3_2_CREATE_TABLES_HA_2_1; --connection child3_3 --disable_warnings eval $CHILD3_3_DROP_TABLES_HA_2_1; --enable_warnings eval $CHILD3_3_CREATE_TABLES_HA_2_1; if (!$OUTPUT_CHILD_GROUP3) { --enable_query_log --enable_result_log } } --connection master_1 --disable_warnings DROP TABLE IF EXISTS ta_l; --enable_warnings --disable_query_log echo CREATE TABLE ta_l ( a INT, b CHAR(1), c DATETIME, PRIMARY KEY(a) ) MASTER_1_ENGINE MASTER_1_CHARSET MASTER_1_COMMENT_HA_2_1; eval CREATE TABLE ta_l ( a INT, b CHAR(1), c DATETIME, PRIMARY KEY(a) ) $MASTER_1_ENGINE $MASTER_1_CHARSET $MASTER_1_COMMENT_HA_2_1; --enable_query_log INSERT INTO ta_l (a, b, c) VALUES (1, 'a', '2008-08-01 10:21:39'), (2, 'b', '2000-01-01 00:00:00'), (3, 'e', '2007-06-04 20:03:11'), (4, 'd', '2003-11-30 05:01:03'), (5, 'c', '2001-12-31 23:59:59'); --echo --echo select test if ($USE_CHILD_GROUP2) { if (!$OUTPUT_CHILD_GROUP2) { --disable_query_log --disable_result_log } --connection child2_1 if ($USE_GENERAL_LOG) { TRUNCATE TABLE mysql.general_log; } --connection child2_2 if ($USE_GENERAL_LOG) { TRUNCATE TABLE mysql.general_log; } if (!$OUTPUT_CHILD_GROUP2) { --enable_query_log --enable_result_log } } --connection master_1 SELECT a, b, date_format(c, '%Y-%m-%d %H:%i:%s') FROM ta_l ORDER BY a; if ($USE_CHILD_GROUP2) { if (!$OUTPUT_CHILD_GROUP2) { --disable_query_log --disable_result_log } --connection child2_1 if ($USE_GENERAL_LOG) { SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %'; } eval $CHILD2_1_SELECT_TABLES; --connection child2_2 if ($USE_GENERAL_LOG) { SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %'; } eval $CHILD2_2_SELECT_TABLES; if (!$OUTPUT_CHILD_GROUP2) { --enable_query_log --enable_result_log } } --echo --echo fail-over test if ($USE_CHILD_GROUP2) { if (!$OUTPUT_CHILD_GROUP2) { --disable_query_log --disable_result_log } --connection child2_1 if ($USE_GENERAL_LOG) { TRUNCATE TABLE mysql.general_log; } --connection child2_2 if ($OUTPUT_CHILD_GROUP2) { --disable_query_log echo CHILD2_2_HA_DROP_TABLES; } --disable_warnings eval $CHILD2_2_HA_DROP_TABLES; --enable_warnings if ($OUTPUT_CHILD_GROUP2) { --enable_query_log } if (!$OUTPUT_CHILD_GROUP2) { --enable_query_log --enable_result_log } } --connection master_1 eval $MASTER_1_CHECK_HA_STATUS; --error 12511 INSERT INTO ta_l (a, b, c) VALUES (6, 'e', '2011-05-05 20:04:05'); eval $MASTER_1_CHECK_LINK_STATUS; eval $MASTER_1_CHECK_LINK_FAILED_LOG; eval $MASTER_1_CHECK_HA_STATUS; INSERT INTO ta_l (a, b, c) VALUES (6, 'e', '2011-05-05 20:04:05'); SELECT a, b, date_format(c, '%Y-%m-%d %H:%i:%s') FROM ta_l ORDER BY a; if ($USE_CHILD_GROUP2) { if (!$OUTPUT_CHILD_GROUP2) { --disable_query_log --disable_result_log } --connection child2_1 if ($USE_GENERAL_LOG) { SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %'; } eval $CHILD2_1_SELECT_TABLES; if (!$OUTPUT_CHILD_GROUP2) { --enable_query_log --enable_result_log } } if ($USE_CHILD_GROUP3) { if (!$OUTPUT_CHILD_GROUP3) { --disable_query_log --disable_result_log } --connection child3_1 eval $CHILD3_1_CHECK_LINK_STATUS; eval $CHILD3_1_CHECK_LINK_FAILED_LOG; --connection child3_2 eval $CHILD3_2_CHECK_LINK_STATUS; eval $CHILD3_2_CHECK_LINK_FAILED_LOG; --connection child3_3 eval $CHILD3_3_CHECK_LINK_STATUS; eval $CHILD3_3_CHECK_LINK_FAILED_LOG; if (!$OUTPUT_CHILD_GROUP3) { --enable_query_log --enable_result_log } } --echo --echo recovery test if ($USE_CHILD_GROUP2) { if (!$OUTPUT_CHILD_GROUP2) { --disable_query_log --disable_result_log } --connection child2_1 if ($USE_GENERAL_LOG) { TRUNCATE TABLE mysql.general_log; } --connection child2_2 if ($OUTPUT_CHILD_GROUP2) { --disable_query_log echo CHILD2_2_HA_CREATE_TABLES; } eval $CHILD2_2_HA_CREATE_TABLES; if ($OUTPUT_CHILD_GROUP2) { --enable_query_log } if ($USE_GENERAL_LOG) { TRUNCATE TABLE mysql.general_log; } if (!$OUTPUT_CHILD_GROUP2) { --enable_query_log --enable_result_log } } if ($USE_CHILD_GROUP3) { if (!$OUTPUT_CHILD_GROUP3) { --disable_query_log --disable_result_log } --connection child3_1 eval $CHILD3_1_SET_RECOVERY_STATUS_2_1; eval $CHILD3_1_CHECK_LINK_STATUS; --connection child3_2 eval $CHILD3_2_SET_RECOVERY_STATUS_2_1; eval $CHILD3_2_CHECK_LINK_STATUS; --connection child3_3 eval $CHILD3_3_SET_RECOVERY_STATUS_2_1; eval $CHILD3_3_CHECK_LINK_STATUS; if (!$OUTPUT_CHILD_GROUP3) { --enable_query_log --enable_result_log } } --connection master_1 eval $MASTER_1_SET_RECOVERY_STATUS_2_1; eval $MASTER_1_CHECK_LINK_STATUS; eval $MASTER_1_COPY_TABLES_2_1; if ($USE_CHILD_GROUP3) { if (!$OUTPUT_CHILD_GROUP3) { --disable_query_log --disable_result_log } --connection child3_1 eval $CHILD3_1_SET_OK_STATUS_2_1; eval $CHILD3_1_CHECK_LINK_STATUS; --connection child3_2 eval $CHILD3_2_SET_OK_STATUS_2_1; eval $CHILD3_2_CHECK_LINK_STATUS; --connection child3_3 eval $CHILD3_3_SET_OK_STATUS_2_1; eval $CHILD3_3_CHECK_LINK_STATUS; if (!$OUTPUT_CHILD_GROUP3) { --enable_query_log --enable_result_log } } --connection master_1 eval $MASTER_1_SET_OK_STATUS_2_1; eval $MASTER_1_CHECK_LINK_STATUS; INSERT INTO ta_l (a, b, c) VALUES (8, 'g', '2011-05-05 21:33:30'); SELECT a, b, date_format(c, '%Y-%m-%d %H:%i:%s') FROM ta_l ORDER BY a; DROP TABLE ta_l; if ($USE_CHILD_GROUP2) { if (!$OUTPUT_CHILD_GROUP2) { --disable_query_log --disable_result_log } --connection child2_1 if ($USE_GENERAL_LOG) { SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %'; } eval $CHILD2_1_SELECT_TABLES; --connection child2_2 if ($USE_GENERAL_LOG) { SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %'; } eval $CHILD2_2_SELECT_TABLES; if (!$OUTPUT_CHILD_GROUP2) { --enable_query_log --enable_result_log } } if ($USE_CHILD_GROUP3) { if (!$OUTPUT_CHILD_GROUP3) { --disable_query_log --disable_result_log } --connection child3_1 --disable_warnings eval $CHILD3_1_DROP_TABLES_HA_2_1; --enable_warnings --connection child3_2 --disable_warnings eval $CHILD3_2_DROP_TABLES_HA_2_1; --enable_warnings --connection child3_3 --disable_warnings eval $CHILD3_3_DROP_TABLES_HA_2_1; --enable_warnings if (!$OUTPUT_CHILD_GROUP3) { --enable_query_log --enable_result_log } } --connection master_1 eval $MASTER_1_CHANGE_HA_MON; --echo --echo active standby test --echo create table test if ($USE_CHILD_GROUP2) { if (!$OUTPUT_CHILD_GROUP2) { --disable_query_log --disable_result_log } --connection child2_1 if ($OUTPUT_CHILD_GROUP2) { --disable_query_log echo CHILD2_1_DROP_TABLES; echo CHILD2_1_CREATE_TABLES; } --disable_warnings eval $CHILD2_1_DROP_TABLES; --enable_warnings eval $CHILD2_1_CREATE_TABLES; if ($OUTPUT_CHILD_GROUP2) { --enable_query_log } if ($USE_GENERAL_LOG) { TRUNCATE TABLE mysql.general_log; } --connection child2_2 if ($OUTPUT_CHILD_GROUP2) { --disable_query_log echo CHILD2_2_DROP_TABLES; echo CHILD2_2_CREATE_TABLES; } --disable_warnings eval $CHILD2_2_DROP_TABLES; --enable_warnings eval $CHILD2_2_CREATE_TABLES; if ($OUTPUT_CHILD_GROUP2) { --enable_query_log } if ($USE_GENERAL_LOG) { TRUNCATE TABLE mysql.general_log; } if (!$OUTPUT_CHILD_GROUP2) { --enable_query_log --enable_result_log } } if ($USE_CHILD_GROUP3) { if (!$OUTPUT_CHILD_GROUP3) { --disable_query_log --disable_result_log } --connection child3_1 --disable_warnings eval $CHILD3_1_DROP_TABLES_HA_2_1; --enable_warnings eval $CHILD3_1_CREATE_TABLES_HA_AS_2_1; --connection child3_2 --disable_warnings eval $CHILD3_2_DROP_TABLES_HA_2_1; --enable_warnings eval $CHILD3_2_CREATE_TABLES_HA_AS_2_1; --connection child3_3 --disable_warnings eval $CHILD3_3_DROP_TABLES_HA_2_1; --enable_warnings eval $CHILD3_3_CREATE_TABLES_HA_AS_2_1; if (!$OUTPUT_CHILD_GROUP3) { --enable_query_log --enable_result_log } } --connection master_1 --disable_warnings DROP TABLE IF EXISTS ta_l; --enable_warnings --disable_query_log echo CREATE TABLE ta_l ( a INT, b CHAR(1), c DATETIME, PRIMARY KEY(a) ) MASTER_1_ENGINE MASTER_1_CHARSET MASTER_1_COMMENT_HA_AS_2_1; eval CREATE TABLE ta_l ( a INT, b CHAR(1), c DATETIME, PRIMARY KEY(a) ) $MASTER_1_ENGINE $MASTER_1_CHARSET $MASTER_1_COMMENT_HA_AS_2_1; --enable_query_log INSERT INTO ta_l (a, b, c) VALUES (1, 'a', '2008-08-01 10:21:39'), (2, 'b', '2000-01-01 00:00:00'), (3, 'e', '2007-06-04 20:03:11'), (4, 'd', '2003-11-30 05:01:03'), (5, 'c', '2001-12-31 23:59:59'); --echo --echo select test if ($USE_CHILD_GROUP2) { if (!$OUTPUT_CHILD_GROUP2) { --disable_query_log --disable_result_log } --connection child2_1 if ($USE_GENERAL_LOG) { TRUNCATE TABLE mysql.general_log; } --connection child2_2 if ($USE_GENERAL_LOG) { TRUNCATE TABLE mysql.general_log; } if (!$OUTPUT_CHILD_GROUP2) { --enable_query_log --enable_result_log } } --connection master_1 SELECT a, b, date_format(c, '%Y-%m-%d %H:%i:%s') FROM ta_l ORDER BY a; if ($USE_CHILD_GROUP2) { if (!$OUTPUT_CHILD_GROUP2) { --disable_query_log --disable_result_log } --connection child2_1 if ($USE_GENERAL_LOG) { SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %'; } eval $CHILD2_1_SELECT_TABLES; --connection child2_2 if ($USE_GENERAL_LOG) { SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %'; } eval $CHILD2_2_SELECT_TABLES; if (!$OUTPUT_CHILD_GROUP2) { --enable_query_log --enable_result_log } } --echo --echo fail-over test if ($USE_CHILD_GROUP2) { if (!$OUTPUT_CHILD_GROUP2) { --disable_query_log --disable_result_log } --connection child2_1 if ($USE_GENERAL_LOG) { TRUNCATE TABLE mysql.general_log; } --connection child2_1 if ($OUTPUT_CHILD_GROUP2) { --disable_query_log echo CHILD2_1_HA_AS_DROP_TABLES; } --disable_warnings eval $CHILD2_1_HA_AS_DROP_TABLES; --enable_warnings if ($OUTPUT_CHILD_GROUP2) { --enable_query_log } if (!$OUTPUT_CHILD_GROUP2) { --enable_query_log --enable_result_log } } --connection master_1 eval $MASTER_1_CHECK_HA_STATUS; --error 12511 INSERT INTO ta_l (a, b, c) VALUES (6, 'e', '2011-05-05 20:04:05'); eval $MASTER_1_CHECK_LINK_STATUS; eval $MASTER_1_CHECK_LINK_FAILED_LOG; eval $MASTER_1_CHECK_HA_STATUS; INSERT INTO ta_l (a, b, c) VALUES (6, 'e', '2011-05-05 20:04:05'); SELECT a, b, date_format(c, '%Y-%m-%d %H:%i:%s') FROM ta_l ORDER BY a; if ($USE_CHILD_GROUP2) { if (!$OUTPUT_CHILD_GROUP2) { --disable_query_log --disable_result_log } --connection child2_2 if ($USE_GENERAL_LOG) { SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %'; } eval $CHILD2_2_SELECT_TABLES; if (!$OUTPUT_CHILD_GROUP2) { --enable_query_log --enable_result_log } } if ($USE_CHILD_GROUP3) { if (!$OUTPUT_CHILD_GROUP3) { --disable_query_log --disable_result_log } --connection child3_1 eval $CHILD3_1_CHECK_LINK_STATUS; eval $CHILD3_1_CHECK_LINK_FAILED_LOG; --connection child3_2 eval $CHILD3_2_CHECK_LINK_STATUS; eval $CHILD3_2_CHECK_LINK_FAILED_LOG; --connection child3_3 eval $CHILD3_3_CHECK_LINK_STATUS; eval $CHILD3_3_CHECK_LINK_FAILED_LOG; if (!$OUTPUT_CHILD_GROUP3) { --enable_query_log --enable_result_log } } --echo --echo recovery test if ($USE_CHILD_GROUP2) { if (!$OUTPUT_CHILD_GROUP2) { --disable_query_log --disable_result_log } --connection child2_1 if ($OUTPUT_CHILD_GROUP2) { --disable_query_log echo CHILD2_1_HA_AS_CREATE_TABLES; } eval $CHILD2_1_HA_AS_CREATE_TABLES; if ($OUTPUT_CHILD_GROUP2) { --enable_query_log } if ($USE_GENERAL_LOG) { TRUNCATE TABLE mysql.general_log; } --connection child2_2 if ($USE_GENERAL_LOG) { TRUNCATE TABLE mysql.general_log; } if (!$OUTPUT_CHILD_GROUP2) { --enable_query_log --enable_result_log } } if ($USE_CHILD_GROUP3) { if (!$OUTPUT_CHILD_GROUP3) { --disable_query_log --disable_result_log } --connection child3_1 eval $CHILD3_1_SET_OK_STATUS_AS_2_1; eval $CHILD3_1_CHECK_LINK_STATUS; --connection child3_2 eval $CHILD3_2_SET_OK_STATUS_AS_2_1; eval $CHILD3_2_CHECK_LINK_STATUS; --connection child3_3 eval $CHILD3_3_SET_OK_STATUS_AS_2_1; eval $CHILD3_3_CHECK_LINK_STATUS; if (!$OUTPUT_CHILD_GROUP3) { --enable_query_log --enable_result_log } } --connection master_1 eval $MASTER_1_SET_OK_STATUS_AS_2_1; eval $MASTER_1_CHECK_LINK_STATUS; INSERT INTO ta_l (a, b, c) VALUES (8, 'g', '2011-05-05 21:33:30'); SELECT a, b, date_format(c, '%Y-%m-%d %H:%i:%s') FROM ta_l ORDER BY a; DROP TABLE ta_l; if ($USE_CHILD_GROUP2) { if (!$OUTPUT_CHILD_GROUP2) { --disable_query_log --disable_result_log } --connection child2_1 if ($USE_GENERAL_LOG) { SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %'; } eval $CHILD2_1_SELECT_TABLES; --connection child2_2 if ($USE_GENERAL_LOG) { SELECT argument FROM mysql.general_log WHERE argument LIKE '%select %'; } eval $CHILD2_2_SELECT_TABLES; if (!$OUTPUT_CHILD_GROUP2) { --enable_query_log --enable_result_log } } if ($USE_CHILD_GROUP3) { if (!$OUTPUT_CHILD_GROUP3) { --disable_query_log --disable_result_log } --connection child3_1 --disable_warnings eval $CHILD3_1_DROP_TABLES_HA_2_1; --enable_warnings --connection child3_2 --disable_warnings eval $CHILD3_2_DROP_TABLES_HA_2_1; --enable_warnings --connection child3_3 --disable_warnings eval $CHILD3_3_DROP_TABLES_HA_2_1; --enable_warnings if (!$OUTPUT_CHILD_GROUP3) { --enable_query_log --enable_result_log } } --connection master_1 eval $MASTER_1_CHANGE_HA_MON; --echo --echo deinit --disable_warnings --connection master_1 DROP DATABASE IF EXISTS auto_test_local; if ($USE_CHILD_GROUP2) { --connection child2_1 DROP DATABASE IF EXISTS auto_test_remote; --connection child2_2 DROP DATABASE IF EXISTS auto_test_remote2; --connection child2_3 DROP DATABASE IF EXISTS auto_test_remote3; } if ($USE_CHILD_GROUP3) { --connection child3_1 DROP DATABASE IF EXISTS auto_test_local; --connection child3_2 DROP DATABASE IF EXISTS auto_test_local; --connection child3_3 DROP DATABASE IF EXISTS auto_test_local; } --disable_query_log --disable_result_log --source ha_test_deinit.inc --source test_deinit.inc --enable_result_log --enable_query_log --enable_warnings } --echo --echo end of test