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