1call mtr.add_suppression("MYSQL_BIN_LOG::add_log_to_index failed to copy index file to crash safe index file."); 2call mtr.add_suppression("Disk is full writing *"); 3call mtr.add_suppression("Retry in 60 secs. *"); 4call mtr.add_suppression("Error writing file*"); 5call mtr.add_suppression("Could not open .*"); 6call mtr.add_suppression("Could not use .*"); 7call mtr.add_suppression("Can't generate a unique log-filename master-bin"); 8call mtr.add_suppression("The server was unable to create a new log file *"); 9call mtr.add_suppression("An error occurred during flush stage of the commit"); 10call mtr.add_suppression("An error occurred during sync stage of the commit"); 11call mtr.add_suppression("Either disk is full or file system is read only"); 12call mtr.add_suppression("Attempting backtrace. You can use the following information to find out"); 13RESET MASTER; 14Test case1 15SET GLOBAL binlog_error_action= ABORT_SERVER; 16flush logs; 17ERROR HY000: Binary logging not possible. Message: Either disk is full or file system is read only while rotating the binlog. Aborting the server. 18Test case2 19SET SESSION debug="+d,fault_injection_updating_index"; 20SET GLOBAL binlog_error_action= ABORT_SERVER; 21flush logs; 22ERROR HY000: Binary logging not possible. Message: Either disk is full or file system is read only while opening the binlog. Aborting the server. 23Test case3 24SET SESSION debug="+d,simulate_disk_full_on_open_binlog"; 25SET GLOBAL binlog_error_action= ABORT_SERVER; 26flush logs; 27ERROR HY000: Binary logging not possible. Message: Either disk is full or file system is read only while opening the binlog. Aborting the server. 28Test case4 29SET SESSION debug="+d,fault_injection_init_name"; 30SET GLOBAL binlog_error_action= ABORT_SERVER; 31flush logs; 32ERROR HY000: Binary logging not possible. Message: Either disk is full or file system is read only while opening the binlog. Aborting the server. 33Test case5 34flush logs; 35ERROR HY000: File 'master-bin.index' not found (Errcode: 13 - Permission denied) 36CREATE TABLE t1 ( f int ); 37SHOW TABLES; 38Tables_in_test 39t1 40DROP TABLE t1; 41Test case6 42SET SESSION debug="+d,fault_injection_updating_index"; 43flush logs; 44ERROR HY000: Can't open file: 'master-bin.000007' (errno: 1 - Operation not permitted) 45CREATE TABLE t2 (f int ); 46SHOW TABLES; 47Tables_in_test 48t2 49DROP TABLE t2; 50SET SESSION debug="-d,fault_injection_updating_index"; 51Test case7 52SET SESSION debug="+d,simulate_disk_full_on_open_binlog"; 53flush logs; 54ERROR HY000: Error writing file 'master-bin.index_crash_safe' (Errcode: 28 - No space left on device) 55SET SESSION debug="-d,simulate_disk_full_on_open_binlog"; 56Test case8 57SET SESSION debug="+d,fault_injection_init_name"; 58flush logs; 59ERROR HY000: Can't open file: 'master-bin.000009' (errno: 1 - Operation not permitted) 60CREATE TABLE t2 (f int ); 61SHOW TABLES; 62Tables_in_test 63t2 64DROP TABLE t2; 65SET SESSION debug="-d,fault_injection_init_name"; 66Test case09 67CREATE TABLE t1 (a INT) ENGINE=InnoDB; 68SET SESSION debug='+d,error_unique_log_filename'; 69FLUSH LOGS; 70ERROR HY000: Can't generate a unique log-filename master-bin.(1-999) 71 72DROP TABLE t1; 73SET SESSION debug=""; 74SHOW BINARY LOGS; 75ERROR HY000: You are not using binary logging 76Test case10 77CREATE TABLE t1 (a INT) ENGINE=InnoDB; 78SET GLOBAL binlog_error_action=ABORT_SERVER; 79SET SESSION debug='+d,error_unique_log_filename'; 80FLUSH LOGS; 81ERROR HY000: Binary logging not possible. Message: Either disk is full or file system is read only while rotating the binlog. Aborting the server. 82DROP TABLE t1; 83Test case11 84RESET MASTER; 85CREATE TABLE t1(i INT); 86SET SESSION debug = "+d,simulate_error_during_flush_cache_to_file"; 87SET GLOBAL binlog_error_action = ABORT_SERVER; 88INSERT INTO t1 VALUES (1); 89ERROR HY000: Binary logging not possible. Message: An error occurred during flush stage of the commit. 'binlog_error_action' is set to 'ABORT_SERVER'. Hence aborting the server. 90include/assert.inc [Count of elements in t1 should be 0.] 91include/assert.inc [Query is not binlogged as expected.] 92RESET MASTER; 93SET SESSION debug ="+d,simulate_error_during_flush_cache_to_file"; 94SET GLOBAL binlog_error_action= IGNORE_ERROR; 95INSERT INTO t1 VALUES (2); 96include/assert.inc [Count of elements in t1 should be 1.] 97include/assert.inc [Query is not binlogged as expected.] 98DROP TABLE t1; 99RESET MASTER; 100Test case12 101SET GLOBAL sync_binlog = 1; 102CREATE TABLE t1(i INT); 103SET SESSION debug = "+d,simulate_error_during_sync_binlog_file"; 104SET GLOBAL binlog_error_action = ABORT_SERVER; 105INSERT INTO t1 VALUES (1); 106ERROR HY000: Binary logging not possible. Message: An error occurred during sync stage of the commit. 'binlog_error_action' is set to 'ABORT_SERVER'. Hence aborting the server. 107DELETE FROM t1; 108RESET MASTER; 109SET SESSION debug = "+d,simulate_error_during_sync_binlog_file"; 110SET GLOBAL binlog_error_action = IGNORE_ERROR; 111INSERT INTO t1 VALUES (2); 112include/assert.inc [Count of elements in t1 should be 1.] 113DROP table t1; 114SET SESSION debug = "-d,simulate_error_during_sync_binlog_file"; 115RESET MASTER; 116Test case13 117CREATE TABLE t1(i INT); 118SET SESSION debug = "+d,simulate_do_write_cache_failure"; 119SET GLOBAL binlog_error_action = ABORT_SERVER; 120INSERT INTO t1 VALUES (1); 121ERROR HY000: Binary logging not possible. Message: An error occurred during flush stage of the commit. 'binlog_error_action' is set to 'ABORT_SERVER'. Hence aborting the server. 122include/assert.inc [Count of elements in t1 should be 0.] 123include/assert.inc [Query is not binlogged as expected.] 124RESET MASTER; 125SET SESSION debug = "+d,simulate_do_write_cache_failure"; 126SET GLOBAL binlog_error_action = IGNORE_ERROR; 127INSERT INTO t1 VALUES (2); 128include/assert.inc [Count of elements in t1 should be 1.] 129DROP table t1; 130RESET MASTER; 131Test case14 132SET GLOBAL binlog_error_action = IGNORE_ERROR; 133SET GLOBAL sync_binlog = 1; 134CREATE TABLE t1(i INT); 135CREATE TABLE t2(i INT); 136SET DEBUG_SYNC = "waiting_to_enter_flush_stage SIGNAL about_to_enter_flush_stage WAIT_FOR binlog_closed"; 137INSERT INTO t1 values (1);; 138SET DEBUG_SYNC = "now wait_for about_to_enter_flush_stage"; 139SET DEBUG_SYNC = "after_binlog_closed_due_to_error SIGNAL binlog_closed"; 140SET SESSION debug = "+d,simulate_error_during_sync_binlog_file"; 141INSERT INTO t2 values (2);; 142DROP table t1, t2; 143Test case15 144SET GLOBAL binlog_error_action = IGNORE_ERROR; 145SET GLOBAL sync_binlog = 1; 146CREATE TABLE t1(i INT); 147CREATE TABLE t2(i INT); 148SET DEBUG_SYNC = "before_binlog_closed_due_to_error SIGNAL binlog_about_to_be_closed WAIT_FOR in_the_middle_of_flush_stage"; 149SET SESSION debug = "+d,simulate_error_during_sync_binlog_file"; 150INSERT INTO t1 values (1);; 151SET DEBUG_SYNC = "now wait_for binlog_about_to_be_closed"; 152SET DEBUG_SYNC = "waiting_in_the_middle_of_flush_stage SIGNAL in_the_middle_of_flush_stage"; 153INSERT INTO t2 values (2);; 154DROP table t1, t2; 155Test case16 156SET GLOBAL binlog_error_action = IGNORE_ERROR; 157SET GLOBAL sync_binlog = 1; 158CREATE TABLE t1(i INT); 159CREATE TABLE t2(i INT); 160SET DEBUG_SYNC = "before_binlog_closed_due_to_error SIGNAL binlog_about_to_be_closed WAIT_FOR another_group_encountered_flush_error"; 161SET SESSION debug = "+d,simulate_error_during_sync_binlog_file"; 162INSERT INTO t1 values (1);; 163SET DEBUG_SYNC = "now wait_for binlog_about_to_be_closed"; 164SET DEBUG_SYNC = "before_binlog_closed_due_to_error SIGNAL another_group_encountered_flush_error"; 165SET SESSION debug ="+d,simulate_error_during_flush_cache_to_file"; 166INSERT INTO t2 values (2);; 167Matching lines are: 168--TIME-- [ERROR] An error occurred during flush_or_sync stage stage of the commit. 'binlog_error_action' is set to 'IGNORE_ERROR'. Hence turning logging off for the whole duration of the MySQL server process. To turn it on again: fix the cause, shutdown the MySQL server and restart it. 169 170Occurrences of the An error occurred during in the input file : 1 171DROP table t1, t2; 172