include/master-slave.inc [connection master] DROP TABLE IF EXISTS t1; **** Testing WL#3228 changes. **** *** Create "wider" table on slave *** connection slave; Checking MYSQL_TYPE_NEWDECIMAL fields connection master; DROP TABLE IF EXISTS t1; Warnings: Note 1051 Unknown table 'test.t1' connection slave; STOP SLAVE; RESET SLAVE; CREATE TABLE t1 (a DECIMAL(5,2)); connection master; CREATE TABLE t1 (a DECIMAL(20, 10)); RESET MASTER; INSERT INTO t1 VALUES (901251.90125); connection slave; START SLAVE; include/wait_for_slave_sql_error.inc [errno=1677] Last_SQL_Error = 'Column 0 of table 'test.t1' cannot be converted from type 'decimal(20,10)' to type 'decimal(5,2)'' SELECT COUNT(*) FROM t1; COUNT(*) 0 STOP SLAVE; RESET SLAVE; connection master; RESET MASTER; connection slave; START SLAVE; connection master; DROP TABLE IF EXISTS t1; connection slave; STOP SLAVE; RESET SLAVE; CREATE TABLE t1 (a DECIMAL(27, 9)); connection master; CREATE TABLE t1 (a DECIMAL(27, 18)); RESET MASTER; INSERT INTO t1 VALUES (901251.90125); connection slave; START SLAVE; include/wait_for_slave_sql_error.inc [errno=1677] Last_SQL_Error = 'Column 0 of table 'test.t1' cannot be converted from type 'decimal(27,18)' to type 'decimal(27,9)'' SELECT COUNT(*) FROM t1; COUNT(*) 0 STOP SLAVE; RESET SLAVE; connection master; RESET MASTER; connection slave; START SLAVE; connection master; DROP TABLE IF EXISTS t1; connection slave; STOP SLAVE; RESET SLAVE; CREATE TABLE t1 (a NUMERIC(5,2)); connection master; CREATE TABLE t1 (a NUMERIC(20, 10)); RESET MASTER; INSERT INTO t1 VALUES (901251.90125); connection slave; START SLAVE; include/wait_for_slave_sql_error.inc [errno=1677] Last_SQL_Error = 'Column 0 of table 'test.t1' cannot be converted from type 'decimal(20,10)' to type 'decimal(5,2)'' SELECT COUNT(*) FROM t1; COUNT(*) 0 STOP SLAVE; RESET SLAVE; connection master; RESET MASTER; connection slave; START SLAVE; Checking MYSQL_TYPE_FLOAT fields connection master; DROP TABLE IF EXISTS t1; connection slave; STOP SLAVE; RESET SLAVE; CREATE TABLE t1 (a FLOAT(20)); connection master; CREATE TABLE t1 (a FLOAT(47)); RESET MASTER; INSERT INTO t1 VALUES (901251.90125); connection slave; START SLAVE; include/wait_for_slave_sql_error.inc [errno=1677] Last_SQL_Error = 'Column 0 of table 'test.t1' cannot be converted from type 'double' to type 'float'' SELECT COUNT(*) FROM t1; COUNT(*) 0 STOP SLAVE; RESET SLAVE; connection master; RESET MASTER; connection slave; START SLAVE; Checking MYSQL_TYPE_BIT fields connection master; DROP TABLE IF EXISTS t1; connection slave; STOP SLAVE; RESET SLAVE; CREATE TABLE t1 (a BIT(5)); connection master; CREATE TABLE t1 (a BIT(64)); RESET MASTER; INSERT INTO t1 VALUES (B'10101'); connection slave; START SLAVE; include/wait_for_slave_sql_error.inc [errno=1677] Last_SQL_Error = 'Column 0 of table 'test.t1' cannot be converted from type 'bit(64)' to type 'bit(5)'' SELECT COUNT(*) FROM t1; COUNT(*) 0 STOP SLAVE; RESET SLAVE; connection master; RESET MASTER; connection slave; START SLAVE; connection master; DROP TABLE IF EXISTS t1; connection slave; STOP SLAVE; RESET SLAVE; CREATE TABLE t1 (a BIT(11)); connection master; CREATE TABLE t1 (a BIT(12)); RESET MASTER; INSERT INTO t1 VALUES (B'10101'); connection slave; START SLAVE; include/wait_for_slave_sql_error.inc [errno=1677] Last_SQL_Error = 'Column 0 of table 'test.t1' cannot be converted from type 'bit(12)' to type 'bit(11)'' SELECT COUNT(*) FROM t1; COUNT(*) 0 STOP SLAVE; RESET SLAVE; connection master; RESET MASTER; connection slave; START SLAVE; Checking MYSQL_TYPE_SET fields connection master; DROP TABLE IF EXISTS t1; connection slave; STOP SLAVE; RESET SLAVE; CREATE TABLE t1 (a SET('4')); connection master; CREATE TABLE t1 (a SET('1','2','3','4','5','6','7','8','9')); RESET MASTER; INSERT INTO t1 VALUES ('4'); connection slave; START SLAVE; include/wait_for_slave_sql_error.inc [errno=1677] Last_SQL_Error = 'Column 0 of table 'test.t1' cannot be converted from type 'set' to type 'set('4')'' SELECT COUNT(*) FROM t1; COUNT(*) 0 STOP SLAVE; RESET SLAVE; connection master; RESET MASTER; connection slave; START SLAVE; Checking MYSQL_TYPE_STRING fields connection master; DROP TABLE IF EXISTS t1; connection slave; STOP SLAVE; RESET SLAVE; CREATE TABLE t1 (a CHAR(10)); connection master; CREATE TABLE t1 (a CHAR(20)); RESET MASTER; INSERT INTO t1 VALUES ('This is a test.'); connection slave; START SLAVE; include/wait_for_slave_sql_error.inc [errno=1677] Last_SQL_Error = 'Column 0 of table 'test.t1' cannot be converted from type 'char(20 octets)' to type 'char(10 octets) character set latin1'' SELECT COUNT(*) FROM t1; COUNT(*) 0 STOP SLAVE; RESET SLAVE; connection master; RESET MASTER; connection slave; START SLAVE; Checking MYSQL_TYPE_ENUM fields connection master; DROP TABLE IF EXISTS t1; connection slave; STOP SLAVE; RESET SLAVE; CREATE TABLE t1 (a ENUM('44','54')); connection master; CREATE TABLE t1 (a ENUM( '01','02','03','04','05','06','07','08','09', '11','12','13','14','15','16','17','18','19', '21','22','23','24','25','26','27','28','29', '31','32','33','34','35','36','37','38','39', '41','42','43','44','45','46','47','48','49', '51','52','53','54','55','56','57','58','59', '61','62','63','64','65','66','67','68','69', '71','72','73','74','75','76','77','78','79', '81','82','83','84','85','86','87','88','89', '91','92','93','94','95','96','97','98','99', '101','102','103','104','105','106','107','108','109', '111','112','113','114','115','116','117','118','119', '121','122','123','124','125','126','127','128','129', '131','132','133','134','135','136','137','138','139', '141','142','143','144','145','146','147','148','149', '151','152','153','154','155','156','157','158','159', '161','162','163','164','165','166','167','168','169', '171','172','173','174','175','176','177','178','179', '181','182','183','184','185','186','187','188','189', '191','192','193','194','195','196','197','198','199', '201','202','203','204','205','206','207','208','209', '211','212','213','214','215','216','217','218','219', '221','222','223','224','225','226','227','228','229', '231','232','233','234','235','236','237','238','239', '241','242','243','244','245','246','247','248','249', '251','252','253','254','255','256','257','258','259', '261','262','263','264','265','266','267','268','269', '271','272','273','274','275','276','277','278','279', '281','282','283','284','285','286','287','288','289', '291','292','293','294','295','296','297','298','299' )); RESET MASTER; INSERT INTO t1 VALUES ('44'); connection slave; START SLAVE; include/wait_for_slave_sql_error.inc [errno=1677] Last_SQL_Error = 'Column 0 of table 'test.t1' cannot be converted from type 'enum' to type 'enum('44','54')'' SELECT COUNT(*) FROM t1; COUNT(*) 0 STOP SLAVE; RESET SLAVE; connection master; RESET MASTER; connection slave; START SLAVE; Checking MYSQL_TYPE_VARCHAR fields connection master; DROP TABLE IF EXISTS t1; connection slave; STOP SLAVE; RESET SLAVE; CREATE TABLE t1 (a VARCHAR(100)); connection master; CREATE TABLE t1 (a VARCHAR(2000)); RESET MASTER; INSERT INTO t1 VALUES ('This is a test.'); connection slave; START SLAVE; include/wait_for_slave_sql_error.inc [errno=1677] Last_SQL_Error = 'Column 0 of table 'test.t1' cannot be converted from type 'varchar(2000 octets)' to type 'varchar(100 octets) character set latin1'' SELECT COUNT(*) FROM t1; COUNT(*) 0 STOP SLAVE; RESET SLAVE; connection master; RESET MASTER; connection slave; START SLAVE; connection master; DROP TABLE IF EXISTS t1; connection slave; STOP SLAVE; RESET SLAVE; CREATE TABLE t1 (a VARCHAR(10)); connection master; CREATE TABLE t1 (a VARCHAR(200)); RESET MASTER; INSERT INTO t1 VALUES ('This is a test.'); connection slave; START SLAVE; include/wait_for_slave_sql_error.inc [errno=1677] Last_SQL_Error = 'Column 0 of table 'test.t1' cannot be converted from type 'varchar(200 octets)' to type 'varchar(10 octets) character set latin1'' SELECT COUNT(*) FROM t1; COUNT(*) 0 STOP SLAVE; RESET SLAVE; connection master; RESET MASTER; connection slave; START SLAVE; connection master; DROP TABLE IF EXISTS t1; connection slave; STOP SLAVE; RESET SLAVE; CREATE TABLE t1 (a VARCHAR(1000)); connection master; CREATE TABLE t1 (a VARCHAR(2000)); RESET MASTER; INSERT INTO t1 VALUES ('This is a test.'); connection slave; START SLAVE; include/wait_for_slave_sql_error.inc [errno=1677] Last_SQL_Error = 'Column 0 of table 'test.t1' cannot be converted from type 'varchar(2000 octets)' to type 'varchar(1000 octets) character set latin1'' SELECT COUNT(*) FROM t1; COUNT(*) 0 STOP SLAVE; RESET SLAVE; connection master; RESET MASTER; connection slave; START SLAVE; Checking MYSQL_TYPE_BLOB fields connection master; DROP TABLE IF EXISTS t1; connection slave; STOP SLAVE; RESET SLAVE; CREATE TABLE t1 (a TINYBLOB); connection master; CREATE TABLE t1 (a LONGBLOB); RESET MASTER; INSERT INTO t1 VALUES ('This is a test.'); connection slave; START SLAVE; include/wait_for_slave_sql_error.inc [errno=1677] Last_SQL_Error = 'Column 0 of table 'test.t1' cannot be converted from type 'longblob' to type 'tinyblob'' SELECT COUNT(*) FROM t1; COUNT(*) 0 STOP SLAVE; RESET SLAVE; connection master; RESET MASTER; connection slave; START SLAVE; connection slave; call mtr.add_suppression("Slave SQL.*Table definition on master and slave does not match: Column 0 ...e mismatch.* error.* 1535"); call mtr.add_suppression("Slave SQL.*Column 0 of table .test.t1. cannot be converted from type.* error.* 1677"); *** Cleanup *** connection master; DROP TABLE IF EXISTS t1; connection slave; include/rpl_end.inc