diff options
Diffstat (limited to 'mysql-test/suite/engines/funcs/t/rpl_misc_functions.test')
-rw-r--r-- | mysql-test/suite/engines/funcs/t/rpl_misc_functions.test | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/mysql-test/suite/engines/funcs/t/rpl_misc_functions.test b/mysql-test/suite/engines/funcs/t/rpl_misc_functions.test new file mode 100644 index 00000000000..89d7ea166e1 --- /dev/null +++ b/mysql-test/suite/engines/funcs/t/rpl_misc_functions.test @@ -0,0 +1,42 @@ +# +# 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 +--disable_warnings +insert into t1 values(2, 0, rand()*1000, rand()*1000, ""); +--enable_warnings +# 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" +--disable_warnings +insert into t1 values(4, connection_id(), rand()*1000, rand()*1000, password('does_this_still_work?')); +--enable_warnings +select * into outfile '../../tmp/rpl_misc_functions.outfile' from t1; +sync_slave_with_master; +create table t2 like t1; +# read the values from the master table +--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR +eval load data local infile '$MYSQLTEST_VARDIR/tmp/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; +drop table t1; +drop table t2; + +connection master; +drop table t1; + +# End of 4.1 tests |