Skip to content

Commit 13beff1

Browse files
Bug#29769293: ERROR 1236 "MASTER HAS PURGED BINARY LOGS CONTAINING GTIDS": GTID NOT LOGGED
Problem ------- The tests rpl.rpl_gtid_purged_fail_to_connect.test and rpl.rpl_gtid_deleted_binlog_fail_to_connect.test are sporadically failing on daily-5.6 because of the below warning found in error log. [Warning] Slave SQL: Request to stop slave SQL Thread received while applying a group that has non-transactional changes; waiting for completion of the group... Analysis & Fix -------------- This warning is generated from applier thread when it is applying the test suppressions into non-transactional engine (MyISAM). Fix is to stop the slave before calling test suppressions. Reviewed by: Pedro Figueiredo <[email protected]>
1 parent 4b008ed commit 13beff1

File tree

4 files changed

+4
-4
lines changed

4 files changed

+4
-4
lines changed

mysql-test/suite/rpl/r/rpl_gtid_deleted_binlog_fail_to_connect.result

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,13 +45,13 @@ include/assert_grep.inc [Found warning containing lost GTIDs in the slave error
4545
CHANGE MASTER TO MASTER_LOG_FILE = 'MASTER_FILE', MASTER_LOG_POS = MASTER_POS, MASTER_AUTO_POSITION = 0;
4646
include/start_slave.inc
4747
include/assert.inc [t1 should contain only one row with the value 2]
48+
include/stop_slave.inc
4849
[connection master]
4950
CALL mtr.add_suppression("Cannot replicate to server.*server has purged required binary logs.*");
5051
CALL mtr.add_suppression("Failed to open log");
5152
CALL mtr.add_suppression("Could not open log");
5253
[connection slave]
5354
CALL mtr.add_suppression("Got fatal error 1236 from master.*Replicate the missing transactions from elsewhere");
54-
include/stop_slave.inc
5555
#
5656
# 7) Cleanup.
5757
#

mysql-test/suite/rpl/r/rpl_gtid_purged_fail_to_connect.result

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ include/assert_grep.inc [Found a message about the long GTIDs in the slave error
5757
CHANGE MASTER TO MASTER_LOG_FILE = 'MASTER_FILE', MASTER_LOG_POS = MASTER_POS, MASTER_AUTO_POSITION = 0;
5858
include/start_slave.inc
5959
include/assert.inc [t1 should contain only one row with the value 2]
60+
include/stop_slave.inc
6061
include/assert_grep.inc [Found warning containing lost GTIDs in the master error log.]
6162
include/assert_grep.inc [Found warning containing lost GTIDs in the slave error log.]
6263
[connection master]
@@ -67,7 +68,6 @@ CALL mtr.add_suppression("Got fatal error 1236 from master.*Replicate the missin
6768
# 7) Cleanup.
6869
#
6970
[connection slave]
70-
include/stop_slave.inc
7171
RESET MASTER;
7272
RESET SLAVE;
7373
[connection master]

mysql-test/suite/rpl/t/rpl_gtid_deleted_binlog_fail_to_connect.test

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,7 @@ START SLAVE;
117117
--let $assert_text= t1 should contain only one row with the value 2
118118
--let $assert_cond= "[SELECT COUNT(*) FROM t1]" = "1" AND "[SELECT * FROM t1]" = "2"
119119
--source include/assert.inc
120+
--source include/stop_slave.inc
120121

121122
# Suppress the error on master.
122123
--source include/rpl_connection_master.inc
@@ -127,7 +128,6 @@ CALL mtr.add_suppression("Could not open log");
127128
# Suppress the error on slave.
128129
--source include/rpl_connection_slave.inc
129130
CALL mtr.add_suppression("Got fatal error 1236 from master.*Replicate the missing transactions from elsewhere");
130-
--source include/stop_slave.inc
131131

132132
--echo #
133133
--echo # 7) Cleanup.

mysql-test/suite/rpl/t/rpl_gtid_purged_fail_to_connect.test

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@ eval CHANGE MASTER TO MASTER_LOG_FILE = '$master_file', MASTER_LOG_POS = $master
132132
--let $assert_text= t1 should contain only one row with the value 2
133133
--let $assert_cond= "[SELECT COUNT(*) FROM t1]" = "1" AND "[SELECT * FROM t1]" = "2"
134134
--source include/assert.inc
135+
--source include/stop_slave.inc
135136

136137
# Verify that warning about the missing transactions are logged into the master's error log.
137138
--let $assert_file=$MYSQLTEST_VARDIR/log/mysqld.1.err
@@ -159,7 +160,6 @@ CALL mtr.add_suppression("Got fatal error 1236 from master.*Replicate the missin
159160
--echo # 7) Cleanup.
160161
--echo #
161162
--source include/rpl_connection_slave.inc
162-
--source include/stop_slave.inc
163163
RESET MASTER;
164164
RESET SLAVE;
165165
--source include/rpl_connection_master.inc

0 commit comments

Comments
 (0)