1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195
|
##########################################################################################
# #
# The aim of this test is to set up replication between a master and slave and check #
# how tables with auto_increment columns are replicated on InnoDB engine. #
# #
# The innodb_autoinc_lock_mode is changed on both master and slave and set #
# to values 0,1,2 so that there are 9 possible scenarios. #
# #
# In each scenario, simple inserts, bulk inserts and mixed mode inserts are done into #
# the table with auto_increment column and then replicated on the slave. #
# #
# Creation Date : 2015-12-14 #
# Author : Deepa Dixit #
# #
# #
##########################################################################################
--let $rpl_skip_start_slave= 1
--source include/master-slave.inc
--source include/big_test.inc
CALL mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT.");
# Increasing master_connect_retry to increase the time interval between connection retries due to Bug#23615424:
# WL#6338: RPL.RPL_INNODB_AUTO_INCREMENT FAILS WITH ERROR IN SYNC_WITH_MASTER.INC
--let $rpl_connection_name= slave
--source include/rpl_connection.inc
CHANGE REPLICATION SOURCE TO SOURCE_CONNECT_RETRY = 30 ;
--source include/start_slave.inc
##########################################################################################
# Consecutive lock mode #
##########################################################################################
--echo # Restart master with innodb_autoinc_lock_mode = 1
--connection master
--let $rpl_server_number=1
--let $rpl_server_parameters= --innodb_autoinc_lock_mode=1
--source include/rpl_restart_server.inc
--echo # Restart slave with innodb_autoinc_lock_mode = 1
--let $rpl_server_parameters=--innodb_autoinc_lock_mode=1
--let $rpl_server_number=2
--source include/rpl_restart_server.inc
--connection slave
--source include/start_slave.inc
--source suite/rpl/include/rpl_auto_increment.inc
##########################################################################################
# Traditional lock mode #
##########################################################################################
--echo # Restart master with innodb_autoinc_lock_mode = 0
--connection master
--let $rpl_server_number=1
--let $rpl_server_parameters= --innodb_autoinc_lock_mode=0
--source include/rpl_restart_server.inc
--echo # Restart slave with innodb_autoinc_lock_mode = 0
--let $rpl_server_parameters=--innodb_autoinc_lock_mode=0
--let $rpl_server_number=2
--source include/rpl_restart_server.inc
--connection slave
--source include/start_slave.inc
--source suite/rpl/include/rpl_auto_increment.inc
##########################################################################################
# Interleaved lock mode #
##########################################################################################
--echo # Restart master with innodb_autoinc_lock_mode = 2
--connection master
--let $rpl_server_number=1
--let $rpl_server_parameters=--innodb_autoinc_lock_mode=2
--source include/rpl_restart_server.inc
--echo # Restart slave with innodb_autoinc_lock_mode = 2
--let $rpl_server_number=2
--let $rpl_server_parameters=--innodb_autoinc_lock_mode=2
--source include/rpl_restart_server.inc
--connection slave
--source include/start_slave.inc
--source suite/rpl/include/rpl_auto_increment.inc
##########################################################################################
# Master : Interleaved lock mode; Slave : Traditional lock mode #
##########################################################################################
--echo # Restart slave with innodb_autoinc_lock_mode = 0
--connection slave
--let $rpl_server_number=2
--let $rpl_server_parameters=--innodb_autoinc_lock_mode=0
--source include/rpl_restart_server.inc
--source include/start_slave.inc
--source suite/rpl/include/rpl_auto_increment.inc
##########################################################################################
# Master : Interleaved lock mode; Slave : Consecutive lock mode #
##########################################################################################
--echo # Restart slave with innodb_autoinc_lock_mode = 1
--connection slave
--let $rpl_server_number=2
--let $rpl_server_parameters=--innodb_autoinc_lock_mode=1
--source include/rpl_restart_server.inc
--source include/start_slave.inc
--source suite/rpl/include/rpl_auto_increment.inc
##########################################################################################
# Master : Traditional lock mode; Slave : Consecutive lock mode #
##########################################################################################
--echo # Restart master with innodb_autoinc_lock_mode = 0
--connection master
--let $rpl_server_number=1
--let $rpl_server_parameters=--innodb_autoinc_lock_mode=0
--source include/rpl_restart_server.inc
--source suite/rpl/include/rpl_auto_increment.inc
##########################################################################################
# Master : Traditonal lock mode; Slave : Interleaved lock mode #
##########################################################################################
--echo # Restart slave with innodb_autoinc_lock_mode = 2
--connection slave
--let $rpl_server_number=2
--let $rpl_server_parameters=--innodb_autoinc_lock_mode=2
--source include/rpl_restart_server.inc
--source include/start_slave.inc
--source suite/rpl/include/rpl_auto_increment.inc
##########################################################################################
# Master : Consecutive lock mode; Slave : Interleaved lock mode #
##########################################################################################
--echo # Restart master with innodb_autoinc_lock_mode = 1
--connection master
--let $rpl_server_number=1
--let $rpl_server_parameters=--innodb_autoinc_lock_mode=1
--source include/rpl_restart_server.inc
--source suite/rpl/include/rpl_auto_increment.inc
##########################################################################################
# Master : Consecutive lock mode; Slave : Traditonal lock mode #
##########################################################################################
--echo # Restart slave with innodb_autoinc_lock_mode = 0
--connection slave
--let $rpl_server_number=2
--let $rpl_server_parameters=--innodb_autoinc_lock_mode=0
--source include/rpl_restart_server.inc
--source include/start_slave.inc
--source suite/rpl/include/rpl_auto_increment.inc
##########################################################################################
# Set locking mode back to the default mode #
##########################################################################################
--echo # Restart master with innodb_autoinc_lock_mode = 2
--connection master
--let $rpl_server_number=1
--let $rpl_server_parameters=--innodb_autoinc_lock_mode=2
--source include/rpl_restart_server.inc
--echo # Restart slave with innodb_autoinc_lock_mode = 2
--let $rpl_server_number=2
--let $rpl_server_parameters=--innodb_autoinc_lock_mode=2
--source include/rpl_restart_server.inc
--connection slave
--source include/start_slave.inc
--source include/rpl_end.inc
|