diff --git a/mysql-test/include/have_outfile.inc b/mysql-test/include/have_outfile.inc index 10f093ec3ef..ae4a2723840 100644 --- a/mysql-test/include/have_outfile.inc +++ b/mysql-test/include/have_outfile.inc @@ -1,5 +1,5 @@ -- require r/have_outfile.require disable_query_log; select load_file(concat(@tmpdir,"/outfile.test")); ---exec rm $MYSQLTEST_VARDIR/tmp/outfile.test +--remove_file $MYSQLTEST_VARDIR/tmp/outfile.test enable_query_log; diff --git a/mysql-test/suite/rpl/r/rpl_misc_functions.result b/mysql-test/suite/rpl/r/rpl_misc_functions.result index 526414cec9c..ca7403316b1 100644 --- a/mysql-test/suite/rpl/r/rpl_misc_functions.result +++ b/mysql-test/suite/rpl/r/rpl_misc_functions.result @@ -40,7 +40,15 @@ CALL test_replication_sp2(); INSERT INTO t1 VALUES (test_replication_sf()); INSERT INTO t1 VALUES (test_replication_sf()); INSERT INTO t1 VALUES (test_replication_sf()); -DROP PROCEDURE IF EXISTS test_replication_sp1; -DROP PROCEDURE IF EXISTS test_replication_sp2; -DROP FUNCTION IF EXISTS test_replication_sf; -DROP TABLE IF EXISTS t1; +select * from t1 into outfile "../tmp/t1_slave.txt"; +create temporary table t1_slave select * from t1 where 1=0; +load data infile '../tmp/t1_slave.txt' into table t1_slave; +select count(*) into @aux from t1, t1_slave +where ABS(t1.col_a - t1_slave.col_a) < 0.0001 ; +SELECT @aux; +@aux +12 +DROP PROCEDURE test_replication_sp1; +DROP PROCEDURE test_replication_sp2; +DROP FUNCTION test_replication_sf; +DROP TABLE t1, t1_slave; diff --git a/mysql-test/suite/rpl/t/rpl_misc_functions.test b/mysql-test/suite/rpl/t/rpl_misc_functions.test index db9b557baad..b87fff919b2 100644 --- a/mysql-test/suite/rpl/t/rpl_misc_functions.test +++ b/mysql-test/suite/rpl/t/rpl_misc_functions.test @@ -77,27 +77,37 @@ INSERT INTO t1 VALUES (test_replication_sf()); INSERT INTO t1 VALUES (test_replication_sf()); INSERT INTO t1 VALUES (test_replication_sf()); -# Record the results of the query on the master ---exec $MYSQL --port=$MASTER_MYPORT test -e "SELECT * FROM test.t1" > $MYSQLTEST_VARDIR/tmp/rpl_rand_master.sql - --sync_slave_with_master -# Record the results of the query on the slave ---exec $MYSQL --port=$SLAVE_MYPORT test -e "SELECT * FROM test.t1" > $MYSQLTEST_VARDIR/tmp/rpl_rand_slave.sql +# Dump table on slave +select * from t1 into outfile "../tmp/t1_slave.txt"; -# Compare the results from the master to the slave. ---exec diff $MYSQLTEST_VARDIR/tmp/rpl_rand_master.sql $MYSQLTEST_VARDIR/tmp/rpl_rand_slave.sql +# Load data from slave into temp table on master +connection master; +create temporary table t1_slave select * from t1 where 1=0; +load data infile '../tmp/t1_slave.txt' into table t1_slave; +--remove_file $MYSQLTEST_VARDIR/tmp/t1_slave.txt + +# Compare master and slave temp table, use subtraction +# for floating point comparison of "double" +select count(*) into @aux from t1, t1_slave +where ABS(t1.col_a - t1_slave.col_a) < 0.0001 ; +SELECT @aux; +if (`SELECT @aux <> 12 OR @aux IS NULL`) +{ + --echo # ERROR: We expected to get count(*) = 12. + SELECT col_a FROM t1; + SELECT col_a FROM t1_slave; + --echo # abort + exit; +} # Cleanup connection master; ---disable_warnings -DROP PROCEDURE IF EXISTS test_replication_sp1; -DROP PROCEDURE IF EXISTS test_replication_sp2; -DROP FUNCTION IF EXISTS test_replication_sf; -DROP TABLE IF EXISTS t1; ---enable_warnings +DROP PROCEDURE test_replication_sp1; +DROP PROCEDURE test_replication_sp2; +DROP FUNCTION test_replication_sf; +DROP TABLE t1, t1_slave; --sync_slave_with_master -# If all is good, when can cleanup our dump files. ---remove_file $MYSQLTEST_VARDIR/tmp/rpl_rand_master.sql ---remove_file $MYSQLTEST_VARDIR/tmp/rpl_rand_slave.sql + diff --git a/mysql-test/t/sp.test b/mysql-test/t/sp.test index 29e759d7881..8c512de20bf 100644 --- a/mysql-test/t/sp.test +++ b/mysql-test/t/sp.test @@ -706,9 +706,9 @@ begin insert into test.t1 values (concat(x, "2"), y+2); end| -# Remove spout file if it exists ---error 0,1 ---remove_file $MYSQLTEST_VARDIR/tmp/spout +# Check that file does not exists +--error 1 +--file_exists $MYSQLTEST_VARDIR/tmp/spout call into_outfile("ofile", 1)| --remove_file $MYSQLTEST_VARDIR/tmp/spout delete from t1| @@ -725,9 +725,9 @@ begin insert into test.t1 values (concat(x, "2"), y+2); end| -# Remove spdump file if it exists ---error 0,1 ---remove_file $MYSQLTEST_VARDIR/tmp/spdump +# Check that file does not exists +--error 1 +--file_exists $MYSQLTEST_VARDIR/tmp/spdump call into_dumpfile("dfile", 1)| --remove_file $MYSQLTEST_VARDIR/tmp/spdump delete from t1|