polardbxengine/mysql-test/suite/rpl/t/rpl_row_find_row_myisam.test

71 lines
1.7 KiB
Plaintext

# BUG#47312: RBR: Disabling key on slave breaks replication:
# HA_ERR_WRONG_INDEX
#
# Description
# ===========
#
# Case #1, shows that before patch for BUG#47312, if defining key on
# slave table, and later disable it, replication would break. This
# has been fixed.
#
-- source include/not_group_replication_plugin.inc
-- source include/have_binlog_format_row.inc
-- source include/force_myisam_default.inc
-- source include/have_myisam.inc
-- source include/master-slave.inc
#
# Case #1: master has key, slave also has one,
# but it gets disabled sometime.
# Replication does not break anymore.
#
--source include/rpl_reset.inc
-- connection master
CREATE TABLE t (a int, b int, c int, key(b)) ENGINE=MyISAM;
--source include/sync_slave_sql_with_master.inc
ALTER TABLE t DISABLE KEYS;
-- connection master
INSERT INTO t VALUES (1,2,4);
INSERT INTO t VALUES (4,3,4);
DELETE FROM t;
--source include/sync_slave_sql_with_master.inc
-- connection master
DROP TABLE t;
--source include/sync_slave_sql_with_master.inc
#
# BUG#53889: slaves stops with 1032; handler error HA_ERR_KEY_NOT_FOUND
#
-- source include/rpl_reset.inc
-- connection master
CREATE TABLE t2 (col4 CHAR(25) DEFAULT NULL,
col1 BIGINT,
col2 TINYINT NOT NULL,
col5 VARCHAR(25) DEFAULT ''
) ENGINE = myisam;
ALTER TABLE t2 ADD INDEX idx1 ( col4 ) , ADD UNIQUE INDEX idx2 ( col5 );
INSERT INTO t2 ( col4 , col2 ) VALUES ( 'Hello', -77 ) ;
UPDATE t2 SET col1 = 13 WHERE col2 = -77;
--source include/sync_slave_sql_with_master.inc
-- let $diff_tables= master:t2, slave:t2
-- source include/diff_tables.inc
-- connection master
DROP TABLE t2;
--source include/sync_slave_sql_with_master.inc
--source include/rpl_end.inc