mirror of
				https://github.com/MariaDB/server.git
				synced 2025-11-03 14:33:32 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			31 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
#
 | 
						|
# Test of replicating some difficult functions
 | 
						|
#
 | 
						|
source include/master-slave.inc;
 | 
						|
 | 
						|
create table t1(id int, i int, r1 int, r2 int, p varchar(100));
 | 
						|
insert into t1 values(1, connection_id(), 0, 0, "");
 | 
						|
# don't put rand and password in the same query, to see if they replicate
 | 
						|
# independently
 | 
						|
# Pure rand test
 | 
						|
insert into t1 values(2, 0, rand()*1000, rand()*1000, "");
 | 
						|
# change the rand suite on the master (we do this because otherwise password()
 | 
						|
# benefits from the fact that the above rand() is well replicated : 
 | 
						|
# it picks the same sequence element, which hides a possible bug in password() replication.
 | 
						|
set sql_log_bin=0;
 | 
						|
insert into t1 values(6, 0, rand(), rand(), "");
 | 
						|
delete from t1 where id=6;
 | 
						|
set sql_log_bin=1;
 | 
						|
# Pure password test
 | 
						|
insert into t1 values(3, 0, 0, 0, password('does_this_work?'));
 | 
						|
# "altogether now"
 | 
						|
insert into t1 values(4, connection_id(), rand()*1000, rand()*1000, password('does_this_still_work?'));
 | 
						|
select * into outfile 'rpl_misc_functions.outfile' from t1;
 | 
						|
sync_slave_with_master;
 | 
						|
create table t2 like t1; 
 | 
						|
# read the values from the master table
 | 
						|
load data local infile './var/master-data/test/rpl_misc_functions.outfile' into table t2;
 | 
						|
# compare them with the replica; the SELECT below should return no row
 | 
						|
select * from t1, t2 where (t1.id=t2.id) and not(t1.i=t2.i and t1.r1=t2.r1 and t1.r2=t2.r2 and t1.p=t2.p);
 | 
						|
stop slave;
 |