mirror of
https://github.com/MariaDB/server.git
synced 2025-12-24 11:21:21 +03:00
BUG#22583 (RBR between MyISAM and non-MyISAM tables containing BIT field
does not work): Changing packed row format to only include null bits for those columns that are present in the row as well as writing BIT columns in a storage engine-independent format. The change in row format is incompatible with the previous format and a slave will not be able to read the new events. mysql-test/extra/rpl_tests/rpl_deadlock.test: Position change since Format_description_log_event is longer. mysql-test/extra/rpl_tests/rpl_log.test: Position change since Format_description_log_event is longer. mysql-test/extra/rpl_tests/rpl_row_charset.test: Position change since Format_description_log_event is longer. mysql-test/r/rpl_000015.result: Result change. mysql-test/r/rpl_change_master.result: Result change. mysql-test/r/rpl_deadlock_innodb.result: Result change. mysql-test/r/rpl_flushlog_loop.result: Result change. mysql-test/r/rpl_log_pos.result: Result change. mysql-test/r/rpl_row_basic_11bugs.result: Result change. mysql-test/r/rpl_row_charset.result: Result change. mysql-test/r/rpl_row_create_table.result: Result change. mysql-test/r/rpl_row_delayed_ins.result: Result change. mysql-test/r/rpl_row_drop.result: Result change. mysql-test/r/rpl_row_flsh_tbls.result: Result change. mysql-test/r/rpl_row_inexist_tbl.result: Result change. mysql-test/r/rpl_row_log.result: Result change. mysql-test/r/rpl_row_log_innodb.result: Result change. mysql-test/r/rpl_row_max_relay_size.result: Result change. mysql-test/r/rpl_row_reset_slave.result: Result change. mysql-test/r/rpl_row_until.result: Result change. mysql-test/r/rpl_server_id1.result: Result change. mysql-test/r/rpl_server_id2.result: Result change. mysql-test/r/rpl_switch_stm_row_mixed.result: Result change. mysql-test/r/rpl_truncate_2myisam.result: Result change. mysql-test/r/rpl_truncate_3innodb.result: Result change. mysql-test/t/rpl_loaddata_s.test: Position change since Format_description_log_event is longer. mysql-test/t/rpl_log_pos.test: Position change since Format_description_log_event is longer. mysql-test/t/rpl_row_basic_11bugs-master.opt: Adding --innodb option mysql-test/t/rpl_row_basic_11bugs.test: Testing explicitly for RBR MyISAM -> InnoDB and vice versa. Position change since Format_description_log_event is longer. mysql-test/t/rpl_row_create_table.test: Position change since Format_description_log_event is longer. mysql-test/t/rpl_row_flsh_tbls.test: Position change since Format_description_log_event is longer. mysql-test/t/rpl_row_mysqlbinlog.test: Position change since Format_description_log_event is longer. mysql-test/t/rpl_switch_stm_row_mixed.test: Position change since Format_description_log_event is longer. mysql-test/t/user_var-binlog.test: Position change since Format_description_log_event is longer. sql/log_event.cc: Changing packed row format to only include null bits for those columns that are present in the row as well as writing BIT columns in a storage engine-independent format. Changing unpack_row() to accomodate for the changes. sql/log_event.h: Renumbering old row events and adding new codes. sql/sql_class.cc: Changing packed row format to only include null bits for those columns that are present in the row as well as writing BIT columns in a storage engine-independent format. Changing THD::pack_row() to accomodate for the changes and adding documentation. mysql-test/t/rpl_row_basic_11bugs-slave.opt: New BitKeeper file ``mysql-test/t/rpl_row_basic_11bugs-slave.opt''
This commit is contained in:
@@ -32,7 +32,7 @@ CREATE TABLE t3 (a INT, b INT) CHARSET=utf8;
|
||||
CREATE TABLE t4 (a INT, b INT) ENGINE=Merge CHARSET=utf8;
|
||||
--replace_column 1 # 4 # 5 #
|
||||
--replace_regex /table_id: [0-9]+/table_id: #/
|
||||
--query_vertical SHOW BINLOG EVENTS FROM 212
|
||||
--query_vertical SHOW BINLOG EVENTS FROM 215
|
||||
--echo **** On Master ****
|
||||
--query_vertical SHOW CREATE TABLE t1
|
||||
--query_vertical SHOW CREATE TABLE t2
|
||||
@@ -67,7 +67,7 @@ connection master;
|
||||
CREATE TABLE t7 (UNIQUE(b)) SELECT a,b FROM tt3;
|
||||
# Shouldn't be written to the binary log
|
||||
--replace_regex /table_id: [0-9]+/table_id: #/
|
||||
SHOW BINLOG EVENTS FROM 1256;
|
||||
SHOW BINLOG EVENTS FROM 1097;
|
||||
|
||||
# Test that INSERT-SELECT works the same way as for SBR.
|
||||
CREATE TABLE t7 (a INT, b INT UNIQUE);
|
||||
@@ -76,7 +76,7 @@ INSERT INTO t7 SELECT a,b FROM tt3;
|
||||
SELECT * FROM t7 ORDER BY a,b;
|
||||
# Should be written to the binary log
|
||||
--replace_regex /table_id: [0-9]+/table_id: #/
|
||||
SHOW BINLOG EVENTS FROM 1118;
|
||||
SHOW BINLOG EVENTS FROM 1097;
|
||||
sync_slave_with_master;
|
||||
SELECT * FROM t7 ORDER BY a,b;
|
||||
|
||||
@@ -87,7 +87,7 @@ BEGIN;
|
||||
INSERT INTO t7 SELECT a,b FROM tt4;
|
||||
ROLLBACK;
|
||||
--replace_regex /table_id: [0-9]+/table_id: #/
|
||||
SHOW BINLOG EVENTS FROM 1314;
|
||||
SHOW BINLOG EVENTS FROM 1293;
|
||||
SELECT * FROM t7 ORDER BY a,b;
|
||||
sync_slave_with_master;
|
||||
SELECT * FROM t7 ORDER BY a,b;
|
||||
@@ -102,7 +102,7 @@ CREATE TEMPORARY TABLE tt7 SELECT 1;
|
||||
--query_vertical SHOW CREATE TABLE t8
|
||||
--query_vertical SHOW CREATE TABLE t9
|
||||
--replace_regex /table_id: [0-9]+/table_id: #/
|
||||
SHOW BINLOG EVENTS FROM 1410;
|
||||
SHOW BINLOG EVENTS FROM 1389;
|
||||
sync_slave_with_master;
|
||||
--echo **** On Slave ****
|
||||
--query_vertical SHOW CREATE TABLE t8
|
||||
|
||||
Reference in New Issue
Block a user