mirror of
https://github.com/MariaDB/server.git
synced 2025-01-22 14:54:20 +01:00
d77bd29c69
It is backport patch. This adds new test case for testing affects of some variables to replication.
225 lines
7.4 KiB
Text
225 lines
7.4 KiB
Text
stop slave;
|
|
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
|
reset master;
|
|
reset slave;
|
|
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
|
start slave;
|
|
|
|
* auto_increment_increment, auto_increment_offset *
|
|
SET @@global.auto_increment_increment=2;
|
|
SET @@session.auto_increment_increment=2;
|
|
SET @@global.auto_increment_offset=10;
|
|
SET @@session.auto_increment_offset=10;
|
|
SET @@global.auto_increment_increment=3;
|
|
SET @@session.auto_increment_increment=3;
|
|
SET @@global.auto_increment_offset=20;
|
|
SET @@session.auto_increment_offset=20;
|
|
CREATE TABLE t1 (a INT NOT NULL AUTO_INCREMENT PRIMARY KEY, b VARCHAR(10)) ENGINE=MyISAM;
|
|
INSERT INTO t1 (b) VALUES ('master');
|
|
INSERT INTO t1 (b) VALUES ('master');
|
|
SELECT * FROM t1 ORDER BY a;
|
|
a b
|
|
2 master
|
|
4 master
|
|
CREATE TABLE t2 (a INT NOT NULL AUTO_INCREMENT PRIMARY KEY, b VARCHAR(10)) ENGINE=MyISAM;
|
|
INSERT INTO t1 (b) VALUES ('slave');
|
|
INSERT INTO t1 (b) VALUES ('slave');
|
|
INSERT INTO t2 (b) VALUES ('slave');
|
|
INSERT INTO t2 (b) VALUES ('slave');
|
|
SELECT * FROM t1 ORDER BY a;
|
|
a b
|
|
2 master
|
|
4 master
|
|
7 slave
|
|
10 slave
|
|
SELECT * FROM t2 ORDER BY a;
|
|
a b
|
|
1 slave
|
|
4 slave
|
|
DROP TABLE IF EXISTS t1,t2;
|
|
SET @@global.auto_increment_increment=1;
|
|
SET @@session.auto_increment_increment=1;
|
|
SET @@global.auto_increment_offset=1;
|
|
SET @@session.auto_increment_offset=1;
|
|
SET @@global.auto_increment_increment=1;
|
|
SET @@session.auto_increment_increment=1;
|
|
SET @@global.auto_increment_offset=1;
|
|
SET @@session.auto_increment_offset=1;
|
|
SET auto_increment_increment=1;
|
|
SET auto_increment_offset=1;
|
|
|
|
* character_set_database, collation_server *
|
|
SET @restore_master_character_set_database=@@global.character_set_database;
|
|
SET @restore_master_collation_server=@@global.collation_server;
|
|
SET @@global.character_set_database=latin1;
|
|
SET @@session.character_set_database=latin1;
|
|
SET @@global.collation_server=latin1_german1_ci;
|
|
SET @@session.collation_server=latin1_german1_ci;
|
|
SET @restore_slave_character_set_database=@@global.character_set_database;
|
|
SET @restore_slave_collation_server=@@global.collation_server;
|
|
SET @@global.character_set_database=utf8;
|
|
SET @@session.character_set_database=utf8;
|
|
SET @@global.collation_server=utf8_bin;
|
|
SET @@session.collation_server=utf8_bin;
|
|
CREATE TABLE t1 (a INT NOT NULL PRIMARY KEY, b VARCHAR(10)) ENGINE=MyISAM;
|
|
SHOW CREATE TABLE t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`a` int(11) NOT NULL,
|
|
`b` varchar(10) COLLATE latin1_german1_ci DEFAULT NULL,
|
|
PRIMARY KEY (`a`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_german1_ci
|
|
CREATE TABLE t2 (a INT NOT NULL PRIMARY KEY, b VARCHAR(10)) ENGINE=MyISAM;
|
|
SHOW CREATE TABLE t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`a` int(11) NOT NULL,
|
|
`b` varchar(10) COLLATE latin1_german1_ci DEFAULT NULL,
|
|
PRIMARY KEY (`a`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_german1_ci
|
|
SHOW CREATE TABLE t2;
|
|
Table Create Table
|
|
t2 CREATE TABLE `t2` (
|
|
`a` int(11) NOT NULL,
|
|
`b` varchar(10) COLLATE utf8_bin DEFAULT NULL,
|
|
PRIMARY KEY (`a`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin
|
|
SET @@global.collation_server=latin1_swedish_ci;
|
|
SET @@session.collation_server=latin1_swedish_ci;
|
|
SET @@global.collation_server=latin1_swedish_ci;
|
|
SET @@session.collation_server=latin1_swedish_ci;
|
|
DROP TABLE IF EXISTS t1,t2;
|
|
|
|
* default_week_format *
|
|
SET @@global.default_week_format=0;
|
|
SET @@session.default_week_format=0;
|
|
SET @@global.default_week_format=1;
|
|
SET @@session.default_week_format=1;
|
|
CREATE TABLE t1 (a INT NOT NULL PRIMARY KEY, b VARCHAR(10), c INT) ENGINE=MyISAM;
|
|
INSERT INTO t1 VALUES (1, 'master ', WEEK('2008-01-07'));
|
|
SELECT * FROM t1 ORDER BY a;
|
|
a b c
|
|
1 master 1
|
|
INSERT INTO t1 VALUES (2, 'slave ', WEEK('2008-01-07'));
|
|
SELECT * FROM t1 ORDER BY a;
|
|
a b c
|
|
1 master 1
|
|
2 slave 2
|
|
DROP TABLE t1;
|
|
SET @@global.default_week_format=0;
|
|
SET @@session.default_week_format=0;
|
|
|
|
* local_infile *
|
|
SET @@global.local_infile=0;
|
|
CREATE TABLE t1 (a INT NOT NULL AUTO_INCREMENT PRIMARY KEY, b VARCHAR(20), c CHAR(254)) ENGINE=MyISAM;
|
|
LOAD DATA LOCAL INFILE 'FILE' INTO TABLE t1 (b);
|
|
SELECT COUNT(*) FROM t1;
|
|
COUNT(*)
|
|
70
|
|
LOAD DATA LOCAL INFILE 'FILE2' INTO TABLE t1 (b);
|
|
ERROR 42000: The used command is not allowed with this MySQL version
|
|
SELECT COUNT(*) FROM t1;
|
|
COUNT(*)
|
|
70
|
|
SET @@global.local_infile=1;
|
|
DROP TABLE t1;
|
|
|
|
* max_heap_table_size *
|
|
SET @restore_slave_max_heap_table_size=@@global.max_heap_table_size;
|
|
SET @@global.max_heap_table_size=16384;
|
|
SET @@session.max_heap_table_size=16384;
|
|
CREATE TABLE t1 (a INT NOT NULL AUTO_INCREMENT PRIMARY KEY, b VARCHAR(10), c CHAR(254)) ENGINE=MEMORY;
|
|
SELECT COUNT(*)=2000 FROM t1;
|
|
COUNT(*)=2000
|
|
1
|
|
SELECT COUNT(*)=2000 FROM t1 WHERE b='master' GROUP BY b ORDER BY b;
|
|
COUNT(*)=2000
|
|
1
|
|
SELECT COUNT(*)<2000 AND COUNT(*)>0 FROM t1 WHERE b='slave' GROUP BY b ORDER BY b;
|
|
COUNT(*)<2000 AND COUNT(*)>0
|
|
1
|
|
SELECT COUNT(*)<2000 AND COUNT(*)>0 FROM t2 WHERE b='slave' GROUP BY b ORDER BY b;
|
|
COUNT(*)<2000 AND COUNT(*)>0
|
|
1
|
|
DROP TABLE IF EXISTS t1,t2;
|
|
|
|
* storage_engine *
|
|
SET @restore_master_storage_engine=@@global.storage_engine;
|
|
SET @@global.storage_engine=InnoDB;
|
|
SET @@session.storage_engine=InnoDB;
|
|
SET @restore_slave_storage_engine=@@global.storage_engine;
|
|
SET @@global.storage_engine=Memory;
|
|
SET @@session.storage_engine=Memory;
|
|
CREATE TABLE t1 (a INT NOT NULL PRIMARY KEY, b VARCHAR(10));
|
|
CREATE TABLE t2 (a INT NOT NULL PRIMARY KEY, b VARCHAR(10)) ENGINE=InnoDB;
|
|
CREATE TABLE t3 (a INT NOT NULL PRIMARY KEY, b VARCHAR(10));
|
|
SHOW CREATE TABLE t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`a` int(11) NOT NULL,
|
|
`b` varchar(10) DEFAULT NULL,
|
|
PRIMARY KEY (`a`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1
|
|
SHOW CREATE TABLE t2;
|
|
Table Create Table
|
|
t2 CREATE TABLE `t2` (
|
|
`a` int(11) NOT NULL,
|
|
`b` varchar(10) DEFAULT NULL,
|
|
PRIMARY KEY (`a`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1
|
|
SHOW CREATE TABLE t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`a` int(11) NOT NULL,
|
|
`b` varchar(10) DEFAULT NULL,
|
|
PRIMARY KEY (`a`)
|
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
|
SHOW CREATE TABLE t2;
|
|
Table Create Table
|
|
t2 CREATE TABLE `t2` (
|
|
`a` int(11) NOT NULL,
|
|
`b` varchar(10) DEFAULT NULL,
|
|
PRIMARY KEY (`a`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1
|
|
SHOW CREATE TABLE t3;
|
|
Table Create Table
|
|
t3 CREATE TABLE `t3` (
|
|
`a` int(11) NOT NULL,
|
|
`b` varchar(10) DEFAULT NULL,
|
|
PRIMARY KEY (`a`)
|
|
) ENGINE=MEMORY DEFAULT CHARSET=latin1
|
|
SET @@global.storage_engine=InnoDB;
|
|
SET @@session.storage_engine=InnoDB;
|
|
DROP TABLE IF EXISTS t1,t2,t3;
|
|
|
|
* sql_mode *
|
|
SET @@global.sql_mode=ANSI;
|
|
SET @@session.sql_mode=ANSI;
|
|
SET @@global.sql_mode=TRADITIONAL;
|
|
SET @@session.sql_mode=TRADITIONAL;
|
|
CREATE TABLE t1 (a INT NOT NULL PRIMARY KEY, b VARCHAR(10), c DATE);
|
|
INSERT INTO t1 VALUES (1, 'master', '0000-00-00');
|
|
SELECT * FROM t1 ORDER BY a;
|
|
a b c
|
|
1 master 0000-00-00
|
|
INSERT INTO t1 VALUES (1, 'slave', '0000-00-00');
|
|
ERROR 22007: Incorrect date value: '0000-00-00' for column 'c' at row 1
|
|
SELECT * FROM t1 ORDER BY a;
|
|
a b c
|
|
1 master 0000-00-00
|
|
SET @@global.sql_mode='';
|
|
SET @@session.sql_mode='';
|
|
SET @@global.sql_mode='';
|
|
SET @@session.sql_mode='';
|
|
DROP TABLE t1;
|
|
|
|
*** clean up ***
|
|
SET @@global.character_set_database=@restore_master_character_set_database;
|
|
SET @@global.collation_server=@restore_master_collation_server;
|
|
SET @@global.storage_engine=@restore_master_storage_engine;
|
|
SET @@global.character_set_database=@restore_slave_character_set_database;
|
|
SET @@global.collation_server=@restore_slave_collation_server;
|
|
SET @@global.max_heap_table_size=@restore_slave_max_heap_table_size;
|
|
SET @@global.storage_engine=@restore_slave_storage_engine;
|
|
|
|
call mtr.add_suppression("The table 't[12]' is full");
|