mirror of
https://github.com/MariaDB/server.git
synced 2025-10-25 17:08:14 +02:00
When binlog_row_image=MINIMAL, UPDATE_ROWS_EVENT may change columns that are not in the before image. Such columns had their bit set in table->write_set, but was missing their bit in table->read_set. As part of this patch, bitmap_union() is extended to handle bitmaps of different sizes, similar to bitmap_intersect(). Signed-off-by: Kristian Nielsen <knielsen@knielsen-hq.org>
23 lines
636 B
Text
23 lines
636 B
Text
--source include/have_innodb.inc
|
|
--source include/have_binlog_format_row.inc
|
|
--source include/master-slave.inc
|
|
|
|
--connection slave
|
|
SET @old_format= @@GLOBAL.binlog_row_image;
|
|
SET GLOBAL binlog_row_image=MINIMAL;
|
|
--source include/stop_slave.inc
|
|
--source include/start_slave.inc
|
|
SET GLOBAL binlog_row_image= @old_format;
|
|
--connection default
|
|
SET SESSION binlog_row_image=MINIMAL;
|
|
|
|
CREATE TABLE t (id INT AUTO_INCREMENT, col_int BIGINT NOT NULL, UNIQUE (col_int), KEY(id)) ENGINE=InnoDB;
|
|
INSERT INTO t VALUES (1,1);
|
|
UPDATE t SET id = 2;
|
|
|
|
--sync_slave_with_master
|
|
|
|
# Cleanup
|
|
--connection master
|
|
DROP TABLE t;
|
|
--source include/rpl_end.inc
|