1# ==== Purpose ==== 2# 3# Test verifies that slave IO thread can process heartbeat events with log_pos 4# values higher than UINT32_MAX. 5# 6# ==== Implementation ==== 7# 8# Steps: 9# 0 - Stop slave threads. Configure a small master_heartbeat_period. 10# 1 - Using debug points, simulate a huge binlog offset higher than 11# UINT32_MAX on master. 12# 2 - Start the slave and observe that slave IO thread is able to process 13# the offset received through heartbeat event. 14# 15# ==== References ==== 16# 17# MDEV-16146: MariaDB slave stops with incompatible heartbeat 18# 19--source include/have_debug.inc 20--source include/have_innodb.inc 21--source include/have_binlog_format_mixed.inc 22# Test simulates binarylog offsets higher than UINT32_MAX 23--source include/have_64bit.inc 24--source include/master-slave.inc 25 26--connection master 27SET @saved_dbug = @@GLOBAL.debug_dbug; 28SET @@global.debug_dbug= 'd,simulate_pos_4G'; 29 30--connection slave 31--source include/stop_slave.inc 32CHANGE MASTER TO MASTER_HEARTBEAT_PERIOD=0.001; 33--source include/start_slave.inc 34 35--connection master 36sleep 1; 37SET @@GLOBAL.debug_dbug = @saved_dbug; 38--sync_slave_with_master 39 40--connection master 41CREATE TABLE t (f INT) ENGINE=INNODB; 42INSERT INTO t VALUES (10); 43DROP TABLE t; 44--source include/rpl_end.inc 45