mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
cleanup: rpl.rpl_row_mysqlbinlog
some trivial simplifications. drinking the ocean, one drop at a time
This commit is contained in:
@ -1,14 +1,21 @@
|
|||||||
include/master-slave.inc
|
include/master-slave.inc
|
||||||
[connection master]
|
[connection master]
|
||||||
|
|
||||||
---Setup Section --
|
---Setup Section --
|
||||||
set timestamp=1000000000;
|
set timestamp=1000000000;
|
||||||
DROP TABLE IF EXISTS t1,t2,t3;
|
|
||||||
CREATE TABLE t1(word VARCHAR(20));
|
CREATE TABLE t1(word VARCHAR(20));
|
||||||
CREATE TABLE t2(id INT AUTO_INCREMENT NOT NULL PRIMARY KEY);
|
CREATE TABLE t2(id INT AUTO_INCREMENT NOT NULL PRIMARY KEY);
|
||||||
CREATE TABLE t3(c1 INT NOT NULL PRIMARY KEY, c2 LONGBLOB, c3 TIMESTAMP, c4 TEXT, c5 FLOAT);
|
CREATE TABLE t3(c1 INT NOT NULL PRIMARY KEY, c2 LONGBLOB, c3 TIMESTAMP, c4 TEXT, c5 FLOAT);
|
||||||
|
INSERT INTO t1 VALUES ("abirvalg");
|
||||||
---Test1 check table load --
|
LOAD DATA INFILE '../../std_data/words.dat' INTO TABLE t1;
|
||||||
|
LOAD DATA INFILE '../../std_data/words.dat' INTO TABLE t1;
|
||||||
|
LOAD DATA INFILE '../../std_data/words.dat' INTO TABLE t1;
|
||||||
|
LOAD DATA INFILE '../../std_data/words.dat' INTO TABLE t1;
|
||||||
|
LOAD DATA INFILE '../../std_data/words.dat' INTO TABLE t1;
|
||||||
|
set @d1 = 'dd1';
|
||||||
|
set @d1 = concat(@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1);
|
||||||
|
set @d1 = concat(@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1);
|
||||||
|
set @d1 = concat(@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1);
|
||||||
|
---Test 1 check table load --
|
||||||
SELECT COUNT(*) from t1;
|
SELECT COUNT(*) from t1;
|
||||||
COUNT(*)
|
COUNT(*)
|
||||||
351
|
351
|
||||||
@ -71,9 +78,7 @@ c1 c3 c4 c5
|
|||||||
5 2006-02-22 00:00:00 Tested in Texas 11
|
5 2006-02-22 00:00:00 Tested in Texas 11
|
||||||
insert into t1 values ("Alas");
|
insert into t1 values ("Alas");
|
||||||
flush logs;
|
flush logs;
|
||||||
|
|
||||||
--- Test 1 Dump binlog to file --
|
--- Test 1 Dump binlog to file --
|
||||||
|
|
||||||
--- Test 1 delete tables, clean master and slave --
|
--- Test 1 delete tables, clean master and slave --
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
DROP TABLE t2;
|
DROP TABLE t2;
|
||||||
@ -84,9 +89,7 @@ reset master;
|
|||||||
reset slave;
|
reset slave;
|
||||||
start slave;
|
start slave;
|
||||||
include/wait_for_slave_to_start.inc
|
include/wait_for_slave_to_start.inc
|
||||||
|
|
||||||
--- Test 1 Load from Dump binlog file --
|
--- Test 1 Load from Dump binlog file --
|
||||||
|
|
||||||
--- Test 1 Check Load Results --
|
--- Test 1 Check Load Results --
|
||||||
SELECT COUNT(*) from t1;
|
SELECT COUNT(*) from t1;
|
||||||
COUNT(*)
|
COUNT(*)
|
||||||
@ -148,7 +151,6 @@ c1 c3 c4 c5
|
|||||||
3 2006-02-22 00:00:00 Tested in Texas 6.6
|
3 2006-02-22 00:00:00 Tested in Texas 6.6
|
||||||
4 2006-02-22 00:00:00 Tested in Texas 8.8
|
4 2006-02-22 00:00:00 Tested in Texas 8.8
|
||||||
5 2006-02-22 00:00:00 Tested in Texas 11
|
5 2006-02-22 00:00:00 Tested in Texas 11
|
||||||
|
|
||||||
--- Test 2 position test --
|
--- Test 2 position test --
|
||||||
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
|
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
|
||||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||||
@ -172,7 +174,6 @@ DELIMITER ;
|
|||||||
ROLLBACK /* added by mysqlbinlog */;
|
ROLLBACK /* added by mysqlbinlog */;
|
||||||
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
|
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
|
||||||
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
|
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
|
||||||
|
|
||||||
--- Test 3 First Remote test --
|
--- Test 3 First Remote test --
|
||||||
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
|
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
|
||||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||||
@ -189,9 +190,6 @@ SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/
|
|||||||
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
|
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
|
||||||
SET @@session.lc_time_names=0/*!*/;
|
SET @@session.lc_time_names=0/*!*/;
|
||||||
SET @@session.collation_database=DEFAULT/*!*/;
|
SET @@session.collation_database=DEFAULT/*!*/;
|
||||||
DROP TABLE IF EXISTS `t1`,`t2`,`t3` /* generated by server */
|
|
||||||
/*!*/;
|
|
||||||
SET TIMESTAMP=1000000000/*!*/;
|
|
||||||
CREATE TABLE t1(word VARCHAR(20))
|
CREATE TABLE t1(word VARCHAR(20))
|
||||||
/*!*/;
|
/*!*/;
|
||||||
SET TIMESTAMP=1000000000/*!*/;
|
SET TIMESTAMP=1000000000/*!*/;
|
||||||
@ -205,7 +203,6 @@ DELIMITER ;
|
|||||||
ROLLBACK /* added by mysqlbinlog */;
|
ROLLBACK /* added by mysqlbinlog */;
|
||||||
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
|
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
|
||||||
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
|
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
|
||||||
|
|
||||||
--- Test 4 Second Remote test --
|
--- Test 4 Second Remote test --
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
DROP TABLE t2;
|
DROP TABLE t2;
|
||||||
@ -276,7 +273,6 @@ c1 c3 c4 c5
|
|||||||
3 2006-02-22 00:00:00 Tested in Texas 6.6
|
3 2006-02-22 00:00:00 Tested in Texas 6.6
|
||||||
4 2006-02-22 00:00:00 Tested in Texas 8.8
|
4 2006-02-22 00:00:00 Tested in Texas 8.8
|
||||||
5 2006-02-22 00:00:00 Tested in Texas 11
|
5 2006-02-22 00:00:00 Tested in Texas 11
|
||||||
|
|
||||||
--- Test 5 LOAD DATA --
|
--- Test 5 LOAD DATA --
|
||||||
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
|
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
|
||||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||||
@ -287,7 +283,6 @@ DELIMITER ;
|
|||||||
ROLLBACK /* added by mysqlbinlog */;
|
ROLLBACK /* added by mysqlbinlog */;
|
||||||
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
|
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
|
||||||
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
|
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
|
||||||
|
|
||||||
--- Test 6 reading stdin --
|
--- Test 6 reading stdin --
|
||||||
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
|
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
|
||||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||||
@ -304,9 +299,6 @@ SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/
|
|||||||
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
|
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8/*!*/;
|
||||||
SET @@session.lc_time_names=0/*!*/;
|
SET @@session.lc_time_names=0/*!*/;
|
||||||
SET @@session.collation_database=DEFAULT/*!*/;
|
SET @@session.collation_database=DEFAULT/*!*/;
|
||||||
DROP TABLE IF EXISTS `t1`,`t2`,`t3` /* generated by server */
|
|
||||||
/*!*/;
|
|
||||||
SET TIMESTAMP=1000000000/*!*/;
|
|
||||||
CREATE TABLE t1(word VARCHAR(20))
|
CREATE TABLE t1(word VARCHAR(20))
|
||||||
/*!*/;
|
/*!*/;
|
||||||
SET TIMESTAMP=1000000000/*!*/;
|
SET TIMESTAMP=1000000000/*!*/;
|
||||||
@ -320,7 +312,6 @@ DELIMITER ;
|
|||||||
ROLLBACK /* added by mysqlbinlog */;
|
ROLLBACK /* added by mysqlbinlog */;
|
||||||
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
|
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
|
||||||
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
|
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
|
||||||
|
|
||||||
--- Test 7 reading stdin w/position --
|
--- Test 7 reading stdin w/position --
|
||||||
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
|
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
|
||||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||||
@ -344,7 +335,6 @@ DELIMITER ;
|
|||||||
ROLLBACK /* added by mysqlbinlog */;
|
ROLLBACK /* added by mysqlbinlog */;
|
||||||
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
|
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
|
||||||
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
|
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
|
||||||
|
|
||||||
--- Test 8 switch internal charset --
|
--- Test 8 switch internal charset --
|
||||||
stop slave;
|
stop slave;
|
||||||
include/wait_for_slave_to_stop.inc
|
include/wait_for_slave_to_stop.inc
|
||||||
@ -380,14 +370,13 @@ HEX(f)
|
|||||||
select HEX(f) from t5;
|
select HEX(f) from t5;
|
||||||
HEX(f)
|
HEX(f)
|
||||||
835C
|
835C
|
||||||
|
|
||||||
--- Test cleanup --
|
--- Test cleanup --
|
||||||
DROP TABLE IF EXISTS t1;
|
DROP TABLE t1, t2, t3, t04, t05, t4, t5;
|
||||||
CREATE TABLE t1 (a INT NOT NULL KEY, b INT);
|
CREATE TABLE t1 (a INT NOT NULL KEY, b INT);
|
||||||
INSERT INTO t1 VALUES(1,1);
|
INSERT INTO t1 VALUES(1,1);
|
||||||
SELECT * FROM t1;
|
SELECT * FROM t1;
|
||||||
a b
|
a b
|
||||||
1 1
|
1 1
|
||||||
FLUSH LOGS;
|
FLUSH LOGS;
|
||||||
DROP TABLE IF EXISTS t1, t2, t3, t04, t05, t4, t5;
|
DROP TABLE t1;
|
||||||
include/rpl_end.inc
|
include/rpl_end.inc
|
||||||
|
@ -4,43 +4,27 @@
|
|||||||
# Purpose: To test changes to mysqlbinlog for row based bin logs #
|
# Purpose: To test changes to mysqlbinlog for row based bin logs #
|
||||||
# We are using .opt file since we need small binlog size #
|
# We are using .opt file since we need small binlog size #
|
||||||
##################################################################
|
##################################################################
|
||||||
# Include Section
|
|
||||||
# Make sure that we have row based bin log
|
|
||||||
-- source include/have_binlog_format_row.inc
|
-- source include/have_binlog_format_row.inc
|
||||||
# Embedded server doesn't support binlogging
|
|
||||||
-- source include/not_embedded.inc
|
-- source include/not_embedded.inc
|
||||||
# This test requires the cp932 charset compiled in
|
|
||||||
-- source include/have_cp932.inc
|
-- source include/have_cp932.inc
|
||||||
# Slow test, don't run during staging part
|
|
||||||
-- source include/not_staging.inc
|
|
||||||
|
|
||||||
-- source include/master-slave.inc
|
-- source include/master-slave.inc
|
||||||
|
|
||||||
# Setup Section
|
--echo ---Setup Section --
|
||||||
|
|
||||||
# we need this for getting fixed timestamps inside of this test
|
# we need this for getting fixed timestamps inside of this test
|
||||||
|
|
||||||
--disable_query_log
|
|
||||||
select "---Setup Section --" as "";
|
|
||||||
--enable_query_log
|
|
||||||
|
|
||||||
set timestamp=1000000000;
|
set timestamp=1000000000;
|
||||||
|
|
||||||
--disable_warnings
|
|
||||||
DROP TABLE IF EXISTS t1,t2,t3;
|
|
||||||
--enable_warnings
|
|
||||||
|
|
||||||
connection master;
|
|
||||||
CREATE TABLE t1(word VARCHAR(20));
|
CREATE TABLE t1(word VARCHAR(20));
|
||||||
CREATE TABLE t2(id INT AUTO_INCREMENT NOT NULL PRIMARY KEY);
|
CREATE TABLE t2(id INT AUTO_INCREMENT NOT NULL PRIMARY KEY);
|
||||||
--let $position= query_get_value(SHOW MASTER STATUS, Position, 1)
|
--let position= query_get_value(SHOW MASTER STATUS, Position, 1)
|
||||||
CREATE TABLE t3(c1 INT NOT NULL PRIMARY KEY, c2 LONGBLOB, c3 TIMESTAMP, c4 TEXT, c5 FLOAT);
|
CREATE TABLE t3(c1 INT NOT NULL PRIMARY KEY, c2 LONGBLOB, c3 TIMESTAMP, c4 TEXT, c5 FLOAT);
|
||||||
--let $stop_position=query_get_value(SHOW MASTER STATUS, Position, 1)
|
--let stop_position=query_get_value(SHOW MASTER STATUS, Position, 1)
|
||||||
--let $stop_position1=`select $stop_position - 1`
|
--let stop_position1=`select $stop_position - 1`
|
||||||
--let $binlog_start_pos=query_get_value(SHOW BINLOG EVENTS LIMIT 1, End_log_pos, 1)
|
--let binlog_start_pos=query_get_value(SHOW BINLOG EVENTS LIMIT 1, End_log_pos, 1)
|
||||||
|
|
||||||
# Test Section
|
# Test Section
|
||||||
# Lets start by putting some data into the tables.
|
# Lets start by putting some data into the tables.
|
||||||
|
|
||||||
--disable_query_log
|
|
||||||
INSERT INTO t1 VALUES ("abirvalg");
|
INSERT INTO t1 VALUES ("abirvalg");
|
||||||
LOAD DATA INFILE '../../std_data/words.dat' INTO TABLE t1;
|
LOAD DATA INFILE '../../std_data/words.dat' INTO TABLE t1;
|
||||||
LOAD DATA INFILE '../../std_data/words.dat' INTO TABLE t1;
|
LOAD DATA INFILE '../../std_data/words.dat' INTO TABLE t1;
|
||||||
@ -54,7 +38,8 @@ set @d1 = concat(@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1);
|
|||||||
set @d1 = concat(@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1);
|
set @d1 = concat(@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1);
|
||||||
set @d1 = concat(@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1);
|
set @d1 = concat(@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1);
|
||||||
|
|
||||||
let $count=500;
|
--disable_query_log
|
||||||
|
let count=500;
|
||||||
while ($count)
|
while ($count)
|
||||||
{
|
{
|
||||||
INSERT INTO t2 VALUES (NULL);
|
INSERT INTO t2 VALUES (NULL);
|
||||||
@ -63,10 +48,7 @@ while ($count)
|
|||||||
}
|
}
|
||||||
--enable_query_log
|
--enable_query_log
|
||||||
|
|
||||||
|
--echo ---Test 1 check table load --
|
||||||
--disable_query_log
|
|
||||||
select "---Test1 check table load --" as "";
|
|
||||||
--enable_query_log
|
|
||||||
|
|
||||||
# Lets Check the tables on the Master
|
# Lets Check the tables on the Master
|
||||||
SELECT COUNT(*) from t1;
|
SELECT COUNT(*) from t1;
|
||||||
@ -95,34 +77,26 @@ insert into t1 values ("Alas");
|
|||||||
flush logs;
|
flush logs;
|
||||||
|
|
||||||
# delimiters are for easier debugging in future
|
# delimiters are for easier debugging in future
|
||||||
--disable_query_log
|
--echo --- Test 1 Dump binlog to file --
|
||||||
select "--- Test 1 Dump binlog to file --" as "";
|
|
||||||
--enable_query_log
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Prepare local temporary file to recreate what we have currently.
|
# Prepare local temporary file to recreate what we have currently.
|
||||||
let $MYSQLD_DATADIR= `select @@datadir;`;
|
let MYSQLD_DATADIR= `select @@datadir;`;
|
||||||
--exec $MYSQL_BINLOG $MYSQLD_DATADIR/master-bin.000001 > $MYSQLTEST_VARDIR/tmp/master.sql
|
--exec $MYSQL_BINLOG $MYSQLD_DATADIR/master-bin.000001 > $MYSQLTEST_VARDIR/tmp/master.sql
|
||||||
|
|
||||||
--exec $MYSQL_BINLOG $MYSQLD_DATADIR/master-bin.000002 >> $MYSQLTEST_VARDIR/tmp/master.sql
|
--exec $MYSQL_BINLOG $MYSQLD_DATADIR/master-bin.000002 >> $MYSQLTEST_VARDIR/tmp/master.sql
|
||||||
|
|
||||||
# Now that we have our file, lets get rid of the current database.
|
# Now that we have our file, lets get rid of the current database.
|
||||||
# Cleanup the master and the slave and try to recreate.
|
# Cleanup the master and the slave and try to recreate.
|
||||||
--disable_query_log
|
--echo --- Test 1 delete tables, clean master and slave --
|
||||||
select "--- Test 1 delete tables, clean master and slave --" as "";
|
|
||||||
--enable_query_log
|
|
||||||
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
DROP TABLE t2;
|
DROP TABLE t2;
|
||||||
DROP TABLE t3;
|
DROP TABLE t3;
|
||||||
|
|
||||||
sync_slave_with_master;
|
sync_slave_with_master;
|
||||||
#we expect STOP SLAVE to produce a warning as the slave is stopped
|
|
||||||
#(the server was started with skip-slave-start)
|
|
||||||
--disable_warnings
|
|
||||||
stop slave;
|
stop slave;
|
||||||
--source include/wait_for_slave_to_stop.inc
|
--source include/wait_for_slave_to_stop.inc
|
||||||
--enable_warnings
|
|
||||||
connection master;
|
connection master;
|
||||||
reset master;
|
reset master;
|
||||||
connection slave;
|
connection slave;
|
||||||
@ -132,15 +106,11 @@ start slave;
|
|||||||
connection master;
|
connection master;
|
||||||
|
|
||||||
# We should be clean at this point, now we will run in the file from above.
|
# We should be clean at this point, now we will run in the file from above.
|
||||||
--disable_query_log
|
--echo --- Test 1 Load from Dump binlog file --
|
||||||
select "--- Test 1 Load from Dump binlog file --" as "";
|
|
||||||
--enable_query_log
|
|
||||||
|
|
||||||
--exec $MYSQL -e "source $MYSQLTEST_VARDIR/tmp/master.sql"
|
--exec $MYSQL -e "source $MYSQLTEST_VARDIR/tmp/master.sql"
|
||||||
|
|
||||||
--disable_query_log
|
--echo --- Test 1 Check Load Results --
|
||||||
select "--- Test 1 Check Load Results --" as "";
|
|
||||||
--enable_query_log
|
|
||||||
|
|
||||||
# Lets Check the tables on the Master
|
# Lets Check the tables on the Master
|
||||||
SELECT COUNT(*) from t1;
|
SELECT COUNT(*) from t1;
|
||||||
@ -168,28 +138,20 @@ remove_file $MYSQLTEST_VARDIR/tmp/master.sql;
|
|||||||
|
|
||||||
# this test for start-position option
|
# this test for start-position option
|
||||||
# By setting this position to 416, we should only get the create of t3
|
# By setting this position to 416, we should only get the create of t3
|
||||||
--disable_query_log
|
--echo --- Test 2 position test --
|
||||||
select "--- Test 2 position test --" as "";
|
|
||||||
--enable_query_log
|
|
||||||
let $MYSQLD_DATADIR= `select @@datadir;`;
|
|
||||||
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --start-position=$position --stop-position=$stop_position $MYSQLD_DATADIR/master-bin.000001
|
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --start-position=$position --stop-position=$stop_position $MYSQLD_DATADIR/master-bin.000001
|
||||||
|
|
||||||
# These are tests for remote binlog.
|
# These are tests for remote binlog.
|
||||||
# They should return the same as previous test.
|
# They should return the same as previous test.
|
||||||
|
|
||||||
--disable_query_log
|
--echo --- Test 3 First Remote test --
|
||||||
select "--- Test 3 First Remote test --" as "";
|
|
||||||
--enable_query_log
|
|
||||||
|
|
||||||
# This is broken now
|
# This is broken now
|
||||||
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
|
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
|
||||||
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --stop-position=$stop_position --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001
|
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --stop-position=$stop_position --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001
|
||||||
|
|
||||||
--disable_query_log
|
--echo --- Test 4 Second Remote test --
|
||||||
select "--- Test 4 Second Remote test --" as "";
|
|
||||||
--enable_query_log
|
|
||||||
--exec $MYSQL_BINLOG --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 > $MYSQLTEST_VARDIR/tmp/remote.sql
|
--exec $MYSQL_BINLOG --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 > $MYSQLTEST_VARDIR/tmp/remote.sql
|
||||||
|
|
||||||
--exec $MYSQL_BINLOG --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000002 >> $MYSQLTEST_VARDIR/tmp/remote.sql
|
--exec $MYSQL_BINLOG --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000002 >> $MYSQLTEST_VARDIR/tmp/remote.sql
|
||||||
|
|
||||||
# Now that we have our file, lets get rid of the current database.
|
# Now that we have our file, lets get rid of the current database.
|
||||||
@ -201,13 +163,8 @@ DROP TABLE t3;
|
|||||||
|
|
||||||
sync_slave_with_master;
|
sync_slave_with_master;
|
||||||
|
|
||||||
#we expect STOP SLAVE to produce a warning as the slave is stopped
|
|
||||||
#(the server was started with skip-slave-start)
|
|
||||||
|
|
||||||
--disable_warnings
|
|
||||||
stop slave;
|
stop slave;
|
||||||
--source include/wait_for_slave_to_stop.inc
|
--source include/wait_for_slave_to_stop.inc
|
||||||
--enable_warnings
|
|
||||||
connection master;
|
connection master;
|
||||||
reset master;
|
reset master;
|
||||||
connection slave;
|
connection slave;
|
||||||
@ -251,40 +208,26 @@ connection master;
|
|||||||
# transactions. /Matz
|
# transactions. /Matz
|
||||||
|
|
||||||
# LOAD DATA
|
# LOAD DATA
|
||||||
--disable_query_log
|
--echo --- Test 5 LOAD DATA --
|
||||||
select "--- Test 5 LOAD DATA --" as "";
|
|
||||||
--enable_query_log
|
|
||||||
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
|
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
|
||||||
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --stop-position=$binlog_start_pos --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000002
|
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --stop-position=$binlog_start_pos --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000002
|
||||||
|
|
||||||
# Bug#7853 (mysqlbinlog does not accept input from stdin)
|
# Bug#7853 (mysqlbinlog does not accept input from stdin)
|
||||||
|
|
||||||
--disable_query_log
|
--echo --- Test 6 reading stdin --
|
||||||
select "--- Test 6 reading stdin --" as "";
|
|
||||||
--enable_query_log
|
|
||||||
let $MYSQLD_DATADIR= `select @@datadir;`;
|
|
||||||
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
||||||
--exec $MYSQL_BINLOG --short-form --stop-position=$stop_position1 - < $MYSQLD_DATADIR/master-bin.000001
|
--exec $MYSQL_BINLOG --short-form --stop-position=$stop_position1 - < $MYSQLD_DATADIR/master-bin.000001
|
||||||
|
|
||||||
--disable_query_log
|
--echo --- Test 7 reading stdin w/position --
|
||||||
select "--- Test 7 reading stdin w/position --" as "";
|
|
||||||
--enable_query_log
|
|
||||||
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
||||||
--exec $MYSQL_BINLOG --short-form --start-position=$position --stop-position=$stop_position - < $MYSQLD_DATADIR/master-bin.000001
|
--exec $MYSQL_BINLOG --short-form --start-position=$position --stop-position=$stop_position - < $MYSQLD_DATADIR/master-bin.000001
|
||||||
|
|
||||||
# Bug#16217 (mysql client did not know how not switch its internal charset)
|
# Bug#16217 (mysql client did not know how not switch its internal charset)
|
||||||
--disable_query_log
|
--echo --- Test 8 switch internal charset --
|
||||||
select "--- Test 8 switch internal charset --" as "";
|
|
||||||
--enable_query_log
|
|
||||||
sync_slave_with_master;
|
sync_slave_with_master;
|
||||||
|
|
||||||
#we expect STOP SLAVE to produce a warning as the slave is stopped
|
|
||||||
#(the server was started with skip-slave-start)
|
|
||||||
|
|
||||||
--disable_warnings
|
|
||||||
stop slave;
|
stop slave;
|
||||||
--source include/wait_for_slave_to_stop.inc
|
--source include/wait_for_slave_to_stop.inc
|
||||||
--enable_warnings
|
|
||||||
connection master;
|
connection master;
|
||||||
reset master;
|
reset master;
|
||||||
connection slave;
|
connection slave;
|
||||||
@ -297,7 +240,6 @@ create table t4 (f text character set utf8);
|
|||||||
create table t5 (f text character set cp932);
|
create table t5 (f text character set cp932);
|
||||||
--exec $MYSQL --default-character-set=utf8 test -e "insert into t4 values(_utf8'ソ')"
|
--exec $MYSQL --default-character-set=utf8 test -e "insert into t4 values(_utf8'ソ')"
|
||||||
--exec $MYSQL --default-character-set=cp932 test -e "insert into t5 values(_cp932'<27>\');"
|
--exec $MYSQL --default-character-set=cp932 test -e "insert into t5 values(_cp932'<27>\');"
|
||||||
let $MYSQLD_DATADIR= `select @@datadir;`;
|
|
||||||
flush logs;
|
flush logs;
|
||||||
rename table t4 to t04, t5 to t05;
|
rename table t4 to t04, t5 to t05;
|
||||||
--exec $MYSQL_BINLOG $MYSQLD_DATADIR/master-bin.000001 | $MYSQL --default-character-set=utf8
|
--exec $MYSQL_BINLOG $MYSQLD_DATADIR/master-bin.000001 | $MYSQL --default-character-set=utf8
|
||||||
@ -314,42 +256,30 @@ select HEX(f) from t4;
|
|||||||
select HEX(f) from t05;
|
select HEX(f) from t05;
|
||||||
select HEX(f) from t5;
|
select HEX(f) from t5;
|
||||||
|
|
||||||
--disable_query_log
|
--echo --- Test cleanup --
|
||||||
select "--- Test cleanup --" as "";
|
|
||||||
--enable_query_log
|
|
||||||
# clean up
|
# clean up
|
||||||
connection master;
|
connection master;
|
||||||
sync_slave_with_master;
|
sync_slave_with_master;
|
||||||
|
|
||||||
connection master;
|
connection master;
|
||||||
|
DROP TABLE t1, t2, t3, t04, t05, t4, t5;
|
||||||
|
|
||||||
# BUG#17654 also test mysqlbinlog to ensure it can read the binlog from a remote server
|
# BUG#17654 also test mysqlbinlog to ensure it can read the binlog from a remote server
|
||||||
# and ensure that the results are the same as if read from a file (the same file).
|
# and ensure that the results are the same as if read from a file (the same file).
|
||||||
|
|
||||||
--disable_warnings
|
|
||||||
DROP TABLE IF EXISTS t1;
|
|
||||||
--enable_warnings
|
|
||||||
|
|
||||||
CREATE TABLE t1 (a INT NOT NULL KEY, b INT);
|
CREATE TABLE t1 (a INT NOT NULL KEY, b INT);
|
||||||
|
|
||||||
INSERT INTO t1 VALUES(1,1);
|
INSERT INTO t1 VALUES(1,1);
|
||||||
|
|
||||||
SELECT * FROM t1;
|
SELECT * FROM t1;
|
||||||
|
|
||||||
let $MYSQLD_DATADIR= `select @@datadir;`;
|
|
||||||
|
|
||||||
FLUSH LOGS;
|
FLUSH LOGS;
|
||||||
|
|
||||||
--exec $MYSQL_BINLOG --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 > $MYSQLTEST_VARDIR/tmp/remote.sql
|
--exec $MYSQL_BINLOG --read-from-remote-server --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000001 > $MYSQLTEST_VARDIR/tmp/remote.sql
|
||||||
--exec $MYSQL_BINLOG $MYSQLD_DATADIR/master-bin.000001 > $MYSQLTEST_VARDIR/tmp/local.sql
|
--exec $MYSQL_BINLOG $MYSQLD_DATADIR/master-bin.000001 > $MYSQLTEST_VARDIR/tmp/local.sql
|
||||||
|
|
||||||
--diff_files $MYSQLTEST_VARDIR/tmp/local.sql $MYSQLTEST_VARDIR/tmp/remote.sql
|
--diff_files $MYSQLTEST_VARDIR/tmp/local.sql $MYSQLTEST_VARDIR/tmp/remote.sql
|
||||||
|
|
||||||
--remove_file $MYSQLTEST_VARDIR/tmp/remote.sql
|
--remove_file $MYSQLTEST_VARDIR/tmp/remote.sql
|
||||||
|
|
||||||
--remove_file $MYSQLTEST_VARDIR/tmp/local.sql
|
--remove_file $MYSQLTEST_VARDIR/tmp/local.sql
|
||||||
|
DROP TABLE t1;
|
||||||
|
|
||||||
DROP TABLE IF EXISTS t1, t2, t3, t04, t05, t4, t5;
|
|
||||||
sync_slave_with_master;
|
sync_slave_with_master;
|
||||||
|
|
||||||
# End of 4.1 tests
|
# End of 4.1 tests
|
||||||
|
Reference in New Issue
Block a user