mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 19:06:14 +01:00 
			
		
		
		
	 1cd6eb5f94
			
		
	
	
	1cd6eb5f94
	
	
	
		
			
			Change of user interface to be more logical and more in line with expectations to work similar to old-style replication. User can now explicitly choose in CHANGE MASTER whether binlog position is taken into account (master_gtid_pos=current_pos) or not (master_gtid_pos= slave_pos) when slave connects to master. @@gtid_pos is replaced by three separate variables @@gtid_slave_pos (can be set by user, replicated GTIDs only), @@gtid_binlog_pos (read only), and @@gtid_current_pos (a combination of the two, most recent GTID within each domain). mysql.rpl_slave_state is renamed to mysql.gtid_slave_pos to match. This fixes MDEV-4474.
		
			
				
	
	
		
			72 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			72 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| --source include/have_innodb.inc
 | |
| --source include/have_binlog_format_mixed.inc
 | |
| 
 | |
| --let $rpl_topology=1->2,1->3
 | |
| --source include/rpl_init.inc
 | |
| 
 | |
| connection server_1;
 | |
| create table t1 (n int);
 | |
| insert into t1 values (1);
 | |
| insert into t1 values (2);
 | |
| save_master_pos;
 | |
| 
 | |
| connection server_3;
 | |
| sync_with_master;
 | |
| source include/stop_slave.inc;
 | |
| source include/wait_for_slave_to_stop.inc;
 | |
| 
 | |
| connection server_2;
 | |
| sync_with_master;
 | |
| source include/stop_slave.inc;
 | |
| source include/wait_for_slave_to_stop.inc;
 | |
| reset slave all;
 | |
| 
 | |
| connection server_1;
 | |
| --replace_result $SERVER_MYPORT_2 SERVER_MYPORT_2
 | |
| eval CHANGE MASTER TO master_host = '127.0.0.1', master_port = $SERVER_MYPORT_2,
 | |
|      master_user='root', MASTER_USE_GTID=CURRENT_POS;
 | |
| source include/start_slave.inc;
 | |
| source include/wait_for_slave_to_start.inc;
 | |
| 
 | |
| connection server_2;
 | |
| flush logs;
 | |
| insert into t1 values (3);
 | |
| insert into t1 values (4);
 | |
| flush logs;
 | |
| save_master_pos;
 | |
| 
 | |
| connection server_3;
 | |
| --replace_result $SERVER_MYPORT_2 SERVER_MYPORT_2
 | |
| eval CHANGE MASTER TO master_host = '127.0.0.1', master_port = $SERVER_MYPORT_2,
 | |
|      MASTER_USE_GTID=CURRENT_POS;
 | |
| source include/start_slave.inc;
 | |
| sync_with_master;
 | |
| 
 | |
| select * from t1 order by n;
 | |
| source include/show_binary_logs.inc;
 | |
| let $binlog_file=LAST;
 | |
| source include/show_binlog_events.inc;
 | |
| 
 | |
| connection server_1;
 | |
| --sync_with_master
 | |
| source include/stop_slave.inc;
 | |
| source include/wait_for_slave_to_stop.inc;
 | |
| reset slave all;
 | |
| 
 | |
| connection server_2;
 | |
| --replace_result $SERVER_MYPORT_1 SERVER_MYPORT_1
 | |
| eval CHANGE MASTER TO master_host = '127.0.0.1', master_port = $SERVER_MYPORT_1,
 | |
|      master_user = 'root', MASTER_USE_GTID=CURRENT_POS;
 | |
| source include/start_slave.inc;
 | |
| 
 | |
| connection server_3;
 | |
| source include/stop_slave.inc;
 | |
| --replace_result $SERVER_MYPORT_1 SERVER_MYPORT_1
 | |
| eval CHANGE MASTER TO master_host = '127.0.0.1', master_port = $SERVER_MYPORT_1,
 | |
|      MASTER_USE_GTID=CURRENT_POS;
 | |
| source include/start_slave.inc;
 | |
| 
 | |
| connection server_1;
 | |
| drop table t1;
 | |
| 
 | |
| --source include/rpl_end.inc
 |