mirror of
https://github.com/MariaDB/server.git
synced 2025-09-02 09:41:40 +03:00
Merge 5.1-rpl-testfixes -> 5.1-rpl
This commit is contained in:
@@ -4,6 +4,8 @@ reset master;
|
||||
reset slave;
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||
start slave;
|
||||
==== Create a big file ====
|
||||
==== Load our big file into a table ====
|
||||
create table t2 (id int not null primary key auto_increment);
|
||||
select @@session.read_buffer_size - @@session.max_allowed_packet > 0 ;
|
||||
@@session.read_buffer_size - @@session.max_allowed_packet > 0
|
||||
@@ -12,15 +14,18 @@ load data infile 'MYSQLTEST_VARDIR/tmp/bug30435_5k.txt' into table t2;
|
||||
select count(*) from t2 /* 5 000 */;
|
||||
count(*)
|
||||
5000
|
||||
show binlog events in 'master-bin.000002' from <binlog_start>;
|
||||
show binlog events from <binlog_start>;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000002 # Query # # use `test`; create table t2 (id int not null primary key auto_increment)
|
||||
master-bin.000002 # Begin_load_query # # ;file_id=#;block_len=#
|
||||
master-bin.000002 # Append_block # # ;file_id=#;block_len=#
|
||||
master-bin.000002 # Append_block # # ;file_id=#;block_len=#
|
||||
master-bin.000002 # Execute_load_query # # use `test`; load data infile 'MYSQLTEST_VARDIR/tmp/bug30435_5k.txt' into table t2 ;file_id=#
|
||||
master-bin.000001 # Query # # use `test`; create table t2 (id int not null primary key auto_increment)
|
||||
master-bin.000001 # Begin_load_query # # ;file_id=#;block_len=#
|
||||
master-bin.000001 # Append_block # # ;file_id=#;block_len=#
|
||||
master-bin.000001 # Append_block # # ;file_id=#;block_len=#
|
||||
master-bin.000001 # Execute_load_query # # use `test`; load data infile 'MYSQLTEST_VARDIR/tmp/bug30435_5k.txt' into table t2 ;file_id=#
|
||||
==== Verify results on slave ====
|
||||
[on slave]
|
||||
select count(*) from t2 /* 5 000 */;
|
||||
count(*)
|
||||
5000
|
||||
drop table t1, t2;
|
||||
end of the tests
|
||||
==== Clean up ====
|
||||
[on master]
|
||||
drop table t2;
|
||||
|
@@ -453,29 +453,29 @@ a b c
|
||||
DROP TABLE IF EXISTS t1,t2,t3,t4,t5,t6,t7,t8;
|
||||
CREATE TABLE t1 (i INT NOT NULL,
|
||||
c CHAR(16) CHARACTER SET utf8 NOT NULL,
|
||||
j INT NOT NULL);
|
||||
j INT NOT NULL) ENGINE = 'MYISAM' ;
|
||||
CREATE TABLE t2 (i INT NOT NULL,
|
||||
c CHAR(16) CHARACTER SET utf8 NOT NULL,
|
||||
j INT NOT NULL);
|
||||
j INT NOT NULL) ENGINE = 'MYISAM' ;
|
||||
ALTER TABLE t2 MODIFY c CHAR(128) CHARACTER SET utf8 NOT NULL;
|
||||
CREATE TABLE t3 (i INT NOT NULL,
|
||||
c CHAR(128) CHARACTER SET utf8 NOT NULL,
|
||||
j INT NOT NULL);
|
||||
j INT NOT NULL) ENGINE = 'MYISAM' ;
|
||||
ALTER TABLE t3 MODIFY c CHAR(16) CHARACTER SET utf8 NOT NULL;
|
||||
CREATE TABLE t4 (i INT NOT NULL,
|
||||
c CHAR(128) CHARACTER SET utf8 NOT NULL,
|
||||
j INT NOT NULL);
|
||||
j INT NOT NULL) ENGINE = 'MYISAM' ;
|
||||
CREATE TABLE t5 (i INT NOT NULL,
|
||||
c CHAR(255) CHARACTER SET utf8 NOT NULL,
|
||||
j INT NOT NULL);
|
||||
j INT NOT NULL) ENGINE = 'MYISAM' ;
|
||||
ALTER TABLE t5 MODIFY c CHAR(16) CHARACTER SET utf8 NOT NULL;
|
||||
CREATE TABLE t6 (i INT NOT NULL,
|
||||
c CHAR(255) CHARACTER SET utf8 NOT NULL,
|
||||
j INT NOT NULL);
|
||||
j INT NOT NULL) ENGINE = 'MYISAM' ;
|
||||
ALTER TABLE t6 MODIFY c CHAR(128) CHARACTER SET utf8 NOT NULL;
|
||||
CREATE TABLE t7 (i INT NOT NULL,
|
||||
c CHAR(255) CHARACTER SET utf8 NOT NULL,
|
||||
j INT NOT NULL);
|
||||
j INT NOT NULL) ENGINE = 'MYISAM' ;
|
||||
[expecting slave to replicate correctly]
|
||||
INSERT INTO t1 VALUES (1, "", 1);
|
||||
INSERT INTO t1 VALUES (2, repeat(_utf8'a', 16), 2);
|
||||
@@ -489,7 +489,9 @@ INSERT INTO t3 VALUES (1, "", 1);
|
||||
INSERT INTO t3 VALUES (2, repeat(_utf8'a', 128), 2);
|
||||
Last_SQL_Error
|
||||
Table definition on master and slave does not match: Column 1 size mismatch - master has size 384, test.t3 on slave has size 49. Master's column size should be <= the slave's column size.
|
||||
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=8;
|
||||
RESET MASTER;
|
||||
STOP SLAVE;
|
||||
RESET SLAVE;
|
||||
START SLAVE;
|
||||
[expecting slave to replicate correctly]
|
||||
INSERT INTO t4 VALUES (1, "", 1);
|
||||
@@ -500,14 +502,18 @@ INSERT INTO t5 VALUES (1, "", 1);
|
||||
INSERT INTO t5 VALUES (2, repeat(_utf8'a', 255), 2);
|
||||
Last_SQL_Error
|
||||
Table definition on master and slave does not match: Column 1 size mismatch - master has size 765, test.t5 on slave has size 49. Master's column size should be <= the slave's column size.
|
||||
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=8;
|
||||
RESET MASTER;
|
||||
STOP SLAVE;
|
||||
RESET SLAVE;
|
||||
START SLAVE;
|
||||
[expecting slave to stop]
|
||||
INSERT INTO t6 VALUES (1, "", 1);
|
||||
INSERT INTO t6 VALUES (2, repeat(_utf8'a', 255), 2);
|
||||
Last_SQL_Error
|
||||
Table definition on master and slave does not match: Column 1 size mismatch - master has size 765, test.t6 on slave has size 385. Master's column size should be <= the slave's column size.
|
||||
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=8;
|
||||
RESET MASTER;
|
||||
STOP SLAVE;
|
||||
RESET SLAVE;
|
||||
START SLAVE;
|
||||
[expecting slave to replicate correctly]
|
||||
INSERT INTO t7 VALUES (1, "", 1);
|
||||
|
@@ -453,29 +453,29 @@ a b c
|
||||
DROP TABLE IF EXISTS t1,t2,t3,t4,t5,t6,t7,t8;
|
||||
CREATE TABLE t1 (i INT NOT NULL,
|
||||
c CHAR(16) CHARACTER SET utf8 NOT NULL,
|
||||
j INT NOT NULL);
|
||||
j INT NOT NULL) ENGINE = 'INNODB' ;
|
||||
CREATE TABLE t2 (i INT NOT NULL,
|
||||
c CHAR(16) CHARACTER SET utf8 NOT NULL,
|
||||
j INT NOT NULL);
|
||||
j INT NOT NULL) ENGINE = 'INNODB' ;
|
||||
ALTER TABLE t2 MODIFY c CHAR(128) CHARACTER SET utf8 NOT NULL;
|
||||
CREATE TABLE t3 (i INT NOT NULL,
|
||||
c CHAR(128) CHARACTER SET utf8 NOT NULL,
|
||||
j INT NOT NULL);
|
||||
j INT NOT NULL) ENGINE = 'INNODB' ;
|
||||
ALTER TABLE t3 MODIFY c CHAR(16) CHARACTER SET utf8 NOT NULL;
|
||||
CREATE TABLE t4 (i INT NOT NULL,
|
||||
c CHAR(128) CHARACTER SET utf8 NOT NULL,
|
||||
j INT NOT NULL);
|
||||
j INT NOT NULL) ENGINE = 'INNODB' ;
|
||||
CREATE TABLE t5 (i INT NOT NULL,
|
||||
c CHAR(255) CHARACTER SET utf8 NOT NULL,
|
||||
j INT NOT NULL);
|
||||
j INT NOT NULL) ENGINE = 'INNODB' ;
|
||||
ALTER TABLE t5 MODIFY c CHAR(16) CHARACTER SET utf8 NOT NULL;
|
||||
CREATE TABLE t6 (i INT NOT NULL,
|
||||
c CHAR(255) CHARACTER SET utf8 NOT NULL,
|
||||
j INT NOT NULL);
|
||||
j INT NOT NULL) ENGINE = 'INNODB' ;
|
||||
ALTER TABLE t6 MODIFY c CHAR(128) CHARACTER SET utf8 NOT NULL;
|
||||
CREATE TABLE t7 (i INT NOT NULL,
|
||||
c CHAR(255) CHARACTER SET utf8 NOT NULL,
|
||||
j INT NOT NULL);
|
||||
j INT NOT NULL) ENGINE = 'INNODB' ;
|
||||
[expecting slave to replicate correctly]
|
||||
INSERT INTO t1 VALUES (1, "", 1);
|
||||
INSERT INTO t1 VALUES (2, repeat(_utf8'a', 16), 2);
|
||||
@@ -489,7 +489,9 @@ INSERT INTO t3 VALUES (1, "", 1);
|
||||
INSERT INTO t3 VALUES (2, repeat(_utf8'a', 128), 2);
|
||||
Last_SQL_Error
|
||||
Table definition on master and slave does not match: Column 1 size mismatch - master has size 384, test.t3 on slave has size 49. Master's column size should be <= the slave's column size.
|
||||
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=8;
|
||||
RESET MASTER;
|
||||
STOP SLAVE;
|
||||
RESET SLAVE;
|
||||
START SLAVE;
|
||||
[expecting slave to replicate correctly]
|
||||
INSERT INTO t4 VALUES (1, "", 1);
|
||||
@@ -500,14 +502,18 @@ INSERT INTO t5 VALUES (1, "", 1);
|
||||
INSERT INTO t5 VALUES (2, repeat(_utf8'a', 255), 2);
|
||||
Last_SQL_Error
|
||||
Table definition on master and slave does not match: Column 1 size mismatch - master has size 765, test.t5 on slave has size 49. Master's column size should be <= the slave's column size.
|
||||
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=8;
|
||||
RESET MASTER;
|
||||
STOP SLAVE;
|
||||
RESET SLAVE;
|
||||
START SLAVE;
|
||||
[expecting slave to stop]
|
||||
INSERT INTO t6 VALUES (1, "", 1);
|
||||
INSERT INTO t6 VALUES (2, repeat(_utf8'a', 255), 2);
|
||||
Last_SQL_Error
|
||||
Table definition on master and slave does not match: Column 1 size mismatch - master has size 765, test.t6 on slave has size 385. Master's column size should be <= the slave's column size.
|
||||
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=8;
|
||||
RESET MASTER;
|
||||
STOP SLAVE;
|
||||
RESET SLAVE;
|
||||
START SLAVE;
|
||||
[expecting slave to replicate correctly]
|
||||
INSERT INTO t7 VALUES (1, "", 1);
|
||||
|
@@ -193,8 +193,8 @@ master-bin.000001 # Intvar # # INSERT_ID=1
|
||||
master-bin.000001 # Query # # use `test`; insert into t1 values (NULL)
|
||||
master-bin.000001 # Query # # use `test`; drop table t1
|
||||
master-bin.000001 # Query # # use `test`; create table t1 (word char(20) not null)ENGINE=MyISAM
|
||||
master-bin.000001 # Begin_load_query # # ;file_id=#;block_len=581
|
||||
master-bin.000001 # Execute_load_query # # use `test`; load data infile '../../std_data/words.dat' into table t1 ignore 1 lines ;file_id=#
|
||||
master-bin.000001 # Begin_load_query # # ;file_id=#;block_len=#
|
||||
master-bin.000001 # Execute_load_query # # use `test`; load data infile '../std_data_ln/words.dat' into table t1 ignore 1 lines ;file_id=#
|
||||
master-bin.000001 # Rotate # # master-bin.000002;pos=4
|
||||
show binlog events in 'master-bin.000002';
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
|
@@ -45,7 +45,7 @@ RESET SLAVE;
|
||||
RESET MASTER;
|
||||
include/start_slave.inc
|
||||
[on slave]
|
||||
SET @@global.init_slave = 'ant';
|
||||
SET @@global.init_slave = 'SELECT 1';
|
||||
[on master]
|
||||
CREATE TABLE tstmt (id INT AUTO_INCREMENT PRIMARY KEY,
|
||||
truth BOOLEAN,
|
||||
@@ -66,9 +66,9 @@ SET @@global.sync_binlog = 2000000;
|
||||
INSERT INTO tstmt(num) VALUES (@@global.sync_binlog);
|
||||
SET @@global.sync_binlog = 3000000;
|
||||
INSERT INTO tstmt(num) VALUES (@@global.sync_binlog);
|
||||
SET @@global.init_slave = 'bison';
|
||||
SET @@global.init_slave = 'SELECT 2';
|
||||
INSERT INTO tstmt(text) VALUES (@@global.init_slave);
|
||||
SET @@global.init_slave = 'cat';
|
||||
SET @@global.init_slave = 'SELECT 3';
|
||||
INSERT INTO tstmt(text) VALUES (@@global.init_slave);
|
||||
SET @@global.slave_exec_mode = 'IDEMPOTENT';
|
||||
INSERT INTO tstmt(text) VALUES (@@global.slave_exec_mode);
|
||||
@@ -140,9 +140,9 @@ INSERT INTO tproc(num) VALUES (@@global.sync_binlog);
|
||||
SET @@global.sync_binlog = 3000000;
|
||||
INSERT INTO tproc(num) VALUES (@@global.sync_binlog);
|
||||
# string
|
||||
SET @@global.init_slave = 'bison';
|
||||
SET @@global.init_slave = 'SELECT 2';
|
||||
INSERT INTO tproc(text) VALUES (@@global.init_slave);
|
||||
SET @@global.init_slave = 'cat';
|
||||
SET @@global.init_slave = 'SELECT 3';
|
||||
INSERT INTO tproc(text) VALUES (@@global.init_slave);
|
||||
# enumeration
|
||||
SET @@global.slave_exec_mode = 'IDEMPOTENT';
|
||||
@@ -226,9 +226,9 @@ INSERT INTO tfunc(num) VALUES (@@global.sync_binlog);
|
||||
SET @@global.sync_binlog = 3000000;
|
||||
INSERT INTO tfunc(num) VALUES (@@global.sync_binlog);
|
||||
# string
|
||||
SET @@global.init_slave = 'bison';
|
||||
SET @@global.init_slave = 'SELECT 2';
|
||||
INSERT INTO tfunc(text) VALUES (@@global.init_slave);
|
||||
SET @@global.init_slave = 'cat';
|
||||
SET @@global.init_slave = 'SELECT 3';
|
||||
INSERT INTO tfunc(text) VALUES (@@global.init_slave);
|
||||
# enumeration
|
||||
SET @@global.slave_exec_mode = 'IDEMPOTENT';
|
||||
@@ -316,9 +316,9 @@ INSERT INTO ttrig(num) VALUES (@@global.sync_binlog);
|
||||
SET @@global.sync_binlog = 3000000;
|
||||
INSERT INTO ttrig(num) VALUES (@@global.sync_binlog);
|
||||
# string
|
||||
SET @@global.init_slave = 'bison';
|
||||
SET @@global.init_slave = 'SELECT 2';
|
||||
INSERT INTO ttrig(text) VALUES (@@global.init_slave);
|
||||
SET @@global.init_slave = 'cat';
|
||||
SET @@global.init_slave = 'SELECT 3';
|
||||
INSERT INTO ttrig(text) VALUES (@@global.init_slave);
|
||||
# enumeration
|
||||
SET @@global.slave_exec_mode = 'IDEMPOTENT';
|
||||
@@ -395,9 +395,9 @@ PREPARE p5 FROM 'SET @@global.sync_binlog = 2000000';
|
||||
PREPARE p6 FROM 'INSERT INTO tprep(num) VALUES (@@global.sync_binlog)';
|
||||
PREPARE p7 FROM 'SET @@global.sync_binlog = 3000000';
|
||||
PREPARE p8 FROM 'INSERT INTO tprep(num) VALUES (@@global.sync_binlog)';
|
||||
PREPARE p9 FROM 'SET @@global.init_slave = \'bison\'';
|
||||
PREPARE p9 FROM 'SET @@global.init_slave = \'SELECT 2\'';
|
||||
PREPARE p10 FROM 'INSERT INTO tprep(text) VALUES (@@global.init_slave)';
|
||||
PREPARE p11 FROM 'SET @@global.init_slave = \'cat\'';
|
||||
PREPARE p11 FROM 'SET @@global.init_slave = \'SELECT 3\'';
|
||||
PREPARE p12 FROM 'INSERT INTO tprep(text) VALUES (@@global.init_slave)';
|
||||
PREPARE p13 FROM 'SET @@global.slave_exec_mode = \'IDEMPOTENT\'';
|
||||
PREPARE p14 FROM 'INSERT INTO tprep(text) VALUES (@@global.slave_exec_mode)';
|
||||
@@ -522,8 +522,8 @@ id truth num text
|
||||
2 0 NULL NULL
|
||||
3 NULL 2000000 NULL
|
||||
4 NULL 3000000 NULL
|
||||
5 NULL NULL bison
|
||||
6 NULL NULL cat
|
||||
5 NULL NULL SELECT 2
|
||||
6 NULL NULL SELECT 3
|
||||
7 NULL NULL IDEMPOTENT
|
||||
8 NULL NULL STRICT
|
||||
9 1 NULL NULL
|
||||
|
@@ -13,3 +13,4 @@
|
||||
rpl_redirect : Failure is sporadic and and the test is superfluous (mats)
|
||||
rpl_innodb_bug28430 : Failure on Solaris Bug #36793
|
||||
rpl_temporary : BUG#38269 2008-07-21 Sven valgrind error in pushbuild
|
||||
rpl_flushlog_loop : BUG#37733 2008-07-23 Sven disabled in 5.1-bugteam. the bug has been fixed in 5.1-rpl: please re-enable when that gets pushed to main
|
||||
|
@@ -19,6 +19,37 @@ source include/wait_for_slave_sql_to_stop.inc;
|
||||
# The 4 should not be inserted into the table, since the incident log
|
||||
# event should have stop the slave.
|
||||
--echo **** On Slave ****
|
||||
#### BEGIN DEBUG INFO ADDED BY SVEN 2008-07-18 -- SEE BUG#38077 ####
|
||||
let $tables= query_get_value(SHOW TABLES, Tables_in_test, 1);
|
||||
if (`SELECT '$tables' != 't1'`)
|
||||
{
|
||||
--echo **** TEST CASE BUG! PRINTING DEBUG INFO! ****
|
||||
--echo **** Dear developer, if you see this in the output of a test
|
||||
--echo **** case run, please add all the information below as a
|
||||
--echo **** comment to BUG#38077. If it's a pushbuild failure, please
|
||||
--echo **** include a link to the push page.
|
||||
--echo **** Thank you! /Sven
|
||||
SHOW BINLOG EVENTS;
|
||||
--echo **** master binlog ****
|
||||
--error 0,1
|
||||
--exec $MYSQL_BINLOG --hexdump $MYSQLTEST_VARDIR/log/master-bin.000001
|
||||
--echo **** slave binlog ****
|
||||
--error 0,1
|
||||
--exec $MYSQL_BINLOG --hexdump $MYSQLTEST_VARDIR/log/slave-bin.000001
|
||||
--echo **** slave status ****
|
||||
query_vertical SHOW SLAVE STATUS;
|
||||
--echo **** slave's master status ****
|
||||
SHOW MASTER STATUS;
|
||||
--echo **** slave binlog events ****
|
||||
--echo [on master]
|
||||
connection master;
|
||||
--echo **** master status ****
|
||||
SHOW MASTER STATUS;
|
||||
--echo **** master binlog events ****
|
||||
SHOW BINLOG EVENTS;
|
||||
exit;
|
||||
}
|
||||
#### END DEBUG INFO ####
|
||||
SELECT * FROM t1;
|
||||
|
||||
--replace_result $MASTER_MYPORT MASTER_PORT
|
||||
|
@@ -1,7 +1,16 @@
|
||||
# ==== Purpose ====
|
||||
#
|
||||
# check replication of load data with the server parameters subjected to
|
||||
# read_buffer_size > max_allowed_packet
|
||||
#
|
||||
# ==== Implementation ====
|
||||
#
|
||||
# Insert many rows into t1, write t1 to file.
|
||||
# Load the file into t2.
|
||||
# See that t2 came out as expected on slave.
|
||||
#
|
||||
# ==== Related Bugs ====
|
||||
#
|
||||
# BUG#30435 loading large LOAD DATA INFILE breaks slave with
|
||||
# read_buffer_size set on master
|
||||
# BUG#33413 show binlog events fails if binlog has event size of close
|
||||
@@ -9,10 +18,17 @@
|
||||
|
||||
source include/have_binlog_format_mixed_or_statement.inc;
|
||||
source include/master-slave.inc;
|
||||
source include/have_innodb.inc;
|
||||
source include/have_binlog_format_mixed_or_statement.inc;
|
||||
|
||||
|
||||
--echo ==== Create a big file ====
|
||||
|
||||
# We turn off binlogging to avoid too much noise in the binlog. t1 is
|
||||
# just an auxiliary construction anyways, it is not needed on the
|
||||
# slave.
|
||||
|
||||
--disable_query_log
|
||||
SET @@sql_log_bin= 0;
|
||||
|
||||
let $rows= 5000;
|
||||
create table t1 (id int not null primary key auto_increment);
|
||||
|
||||
@@ -22,10 +38,13 @@ while($rows)
|
||||
dec $rows;
|
||||
}
|
||||
eval select * into outfile '$MYSQLTEST_VARDIR/tmp/bug30435_5k.txt' from t1;
|
||||
flush logs;
|
||||
|
||||
DROP TABLE t1;
|
||||
SET @@sql_log_bin= 1;
|
||||
--enable_query_log
|
||||
|
||||
connection master;
|
||||
|
||||
--echo ==== Load our big file into a table ====
|
||||
create table t2 (id int not null primary key auto_increment);
|
||||
|
||||
select @@session.read_buffer_size - @@session.max_allowed_packet > 0 ;
|
||||
@@ -34,21 +53,21 @@ select @@session.read_buffer_size - @@session.max_allowed_packet > 0 ;
|
||||
eval load data infile '$MYSQLTEST_VARDIR/tmp/bug30435_5k.txt' into table t2;
|
||||
select count(*) from t2 /* 5 000 */;
|
||||
|
||||
# the binglog will show fragmented Append_block events
|
||||
--let $binlog_start=106
|
||||
--replace_column 2 # 4 # 5 #
|
||||
--replace_regex /\/\* xid=.* \*\//\/* XID *\// /file_id=[0-9]+/file_id=#/ /block_len=[0-9]+/block_len=#/
|
||||
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR $binlog_start <binlog_start>
|
||||
--eval show binlog events in 'master-bin.000002' from $binlog_start
|
||||
# the binlog will show fragmented Append_block events
|
||||
source include/show_binlog_events.inc;
|
||||
|
||||
|
||||
--echo ==== Verify results on slave ====
|
||||
|
||||
--echo [on slave]
|
||||
sync_slave_with_master;
|
||||
#connection slave;
|
||||
select count(*) from t2 /* 5 000 */;
|
||||
|
||||
|
||||
--echo ==== Clean up ====
|
||||
|
||||
--echo [on master]
|
||||
connection master;
|
||||
drop table t1, t2;
|
||||
drop table t2;
|
||||
sync_slave_with_master;
|
||||
remove_file $MYSQLTEST_VARDIR/tmp/bug30435_5k.txt;
|
||||
|
||||
--echo end of the tests
|
||||
|
@@ -1 +0,0 @@
|
||||
--binlog-format=row
|
@@ -1 +0,0 @@
|
||||
--binlog-format=statement --log-slave-updates
|
@@ -1,13 +1,30 @@
|
||||
# Requires statement logging
|
||||
# ==== Purpose ====
|
||||
#
|
||||
# Verify that Slave_open_temp_tables is increased when a temporary
|
||||
# table is opened on the slave, and decreased when a temporary table
|
||||
# is closed on the slave, and that it is preserved during 'DELETE FROM
|
||||
# table' and 'TRUNCATE table'.
|
||||
#
|
||||
# ==== Method ====
|
||||
#
|
||||
# Create a temporary table on master, insert rows, and try:
|
||||
# - delete rows from the table
|
||||
# - truncate the table
|
||||
# - drop the table
|
||||
#
|
||||
# ==== Related bugs ====
|
||||
#
|
||||
# BUG#17137 Running "truncate table" on temporary table leaves the table open on a slave
|
||||
#
|
||||
# Bug in this test: BUG#37493: rpl_trunc_temp.test nondeterministic
|
||||
|
||||
|
||||
# Requires statement-based logging since temporary tables are not
|
||||
# logged in row-based logging
|
||||
-- source include/have_binlog_format_mixed_or_statement.inc
|
||||
|
||||
source include/master-slave.inc;
|
||||
|
||||
#
|
||||
# Bug#17137 Running "truncate table" on temporary table
|
||||
# leaves the table open on a slave
|
||||
#
|
||||
|
||||
create temporary table t1 (n int);
|
||||
insert into t1 values(1);
|
||||
sync_slave_with_master;
|
||||
@@ -28,13 +45,10 @@ show status like 'Slave_open_temp_tables';
|
||||
# Disconnect the master, temp table on slave should dissapear
|
||||
disconnect master;
|
||||
|
||||
connection master1;
|
||||
# Wait until drop of temp tables appers in binlog
|
||||
connection slave;
|
||||
|
||||
# Wait until drop of temp tables appers in slave's binlog
|
||||
let $wait_binlog_event= DROP;
|
||||
source include/wait_for_binlog_event.inc;
|
||||
|
||||
connection slave;
|
||||
show status like 'Slave_open_temp_tables';
|
||||
|
||||
|
||||
# End of 4.1 tests
|
||||
|
@@ -1 +0,0 @@
|
||||
--binlog-format=mixed
|
@@ -1,6 +1,6 @@
|
||||
# Same test as rpl_truncate_7ndb.test, but with mixed mode
|
||||
# This is marked with 'big_test' just because the rpl_truncate_7ndb test is
|
||||
# so slow...
|
||||
|
||||
--source include/have_binlog_format_mixed.inc
|
||||
--source include/big_test.inc
|
||||
--source t/rpl_truncate_7ndb.test
|
||||
|
@@ -117,7 +117,7 @@ source include/reset_master_and_slave.inc;
|
||||
# above, but can't because it affects how the slave works.
|
||||
--echo [on slave]
|
||||
connection slave;
|
||||
SET @@global.init_slave = 'ant';
|
||||
SET @@global.init_slave = 'SELECT 1';
|
||||
|
||||
|
||||
--echo [on master]
|
||||
@@ -154,9 +154,9 @@ SET @@global.sync_binlog = 3000000;
|
||||
INSERT INTO tstmt(num) VALUES (@@global.sync_binlog);
|
||||
|
||||
# string
|
||||
SET @@global.init_slave = 'bison';
|
||||
SET @@global.init_slave = 'SELECT 2';
|
||||
INSERT INTO tstmt(text) VALUES (@@global.init_slave);
|
||||
SET @@global.init_slave = 'cat';
|
||||
SET @@global.init_slave = 'SELECT 3';
|
||||
INSERT INTO tstmt(text) VALUES (@@global.init_slave);
|
||||
|
||||
# enumeration
|
||||
@@ -258,9 +258,9 @@ BEGIN
|
||||
INSERT INTO tproc(num) VALUES (@@global.sync_binlog);
|
||||
|
||||
# string
|
||||
SET @@global.init_slave = 'bison';
|
||||
SET @@global.init_slave = 'SELECT 2';
|
||||
INSERT INTO tproc(text) VALUES (@@global.init_slave);
|
||||
SET @@global.init_slave = 'cat';
|
||||
SET @@global.init_slave = 'SELECT 3';
|
||||
INSERT INTO tproc(text) VALUES (@@global.init_slave);
|
||||
|
||||
# enumeration
|
||||
@@ -367,9 +367,9 @@ BEGIN
|
||||
INSERT INTO tfunc(num) VALUES (@@global.sync_binlog);
|
||||
|
||||
# string
|
||||
SET @@global.init_slave = 'bison';
|
||||
SET @@global.init_slave = 'SELECT 2';
|
||||
INSERT INTO tfunc(text) VALUES (@@global.init_slave);
|
||||
SET @@global.init_slave = 'cat';
|
||||
SET @@global.init_slave = 'SELECT 3';
|
||||
INSERT INTO tfunc(text) VALUES (@@global.init_slave);
|
||||
|
||||
# enumeration
|
||||
@@ -478,9 +478,9 @@ BEGIN
|
||||
INSERT INTO ttrig(num) VALUES (@@global.sync_binlog);
|
||||
|
||||
# string
|
||||
SET @@global.init_slave = 'bison';
|
||||
SET @@global.init_slave = 'SELECT 2';
|
||||
INSERT INTO ttrig(text) VALUES (@@global.init_slave);
|
||||
SET @@global.init_slave = 'cat';
|
||||
SET @@global.init_slave = 'SELECT 3';
|
||||
INSERT INTO ttrig(text) VALUES (@@global.init_slave);
|
||||
|
||||
# enumeration
|
||||
@@ -581,9 +581,9 @@ PREPARE p7 FROM 'SET @@global.sync_binlog = 3000000';
|
||||
PREPARE p8 FROM 'INSERT INTO tprep(num) VALUES (@@global.sync_binlog)';
|
||||
|
||||
# string
|
||||
PREPARE p9 FROM 'SET @@global.init_slave = \'bison\'';
|
||||
PREPARE p9 FROM 'SET @@global.init_slave = \'SELECT 2\'';
|
||||
PREPARE p10 FROM 'INSERT INTO tprep(text) VALUES (@@global.init_slave)';
|
||||
PREPARE p11 FROM 'SET @@global.init_slave = \'cat\'';
|
||||
PREPARE p11 FROM 'SET @@global.init_slave = \'SELECT 3\'';
|
||||
PREPARE p12 FROM 'INSERT INTO tprep(text) VALUES (@@global.init_slave)';
|
||||
|
||||
# enumeration
|
||||
|
Reference in New Issue
Block a user