mirror of
https://github.com/MariaDB/server.git
synced 2025-11-27 05:41:41 +03:00
Fix was to add a test in Query_log_event::Query_log_event() if we are using CREATE ... SELECT and in this case use trans cache, like we do on the master. This avoid using (with doesn't have checksum) Other things: - Removed dummy call my_checksum(0L, NULL, 0) - More DBUG_PRINT - Cleaned up Log_event::need_checksum() to make it more readable (similar as in MySQL 5.6) - Renamed variable that was hiding another one in create_table_imp()
42 lines
796 B
Plaintext
42 lines
796 B
Plaintext
--source include/have_innodb.inc
|
|
|
|
--let $rpl_topology=1->2->3
|
|
--source include/rpl_init.inc
|
|
|
|
#
|
|
# Test of MDEV-8428 Mangled DML statements on 2nd level slave when enabling
|
|
# binlog checksums
|
|
#
|
|
|
|
connection server_1;
|
|
|
|
--echo # On server_1
|
|
CREATE DATABASE test_8428;
|
|
USE test_8428;
|
|
CREATE TABLE t1(i INT) ENGINE=INNODB;
|
|
INSERT INTO t1 VALUES(1), (2), (3), (4), (5);
|
|
CREATE TABLE t2 AS SELECT * FROM t1;
|
|
CREATE TABLE t3 ENGINE=MyISAM AS SELECT * FROM t1;
|
|
|
|
save_master_pos;
|
|
connection server_2;
|
|
sync_with_master;
|
|
|
|
--echo # On server_2
|
|
SHOW TABLES IN test_8428;
|
|
|
|
save_master_pos;
|
|
connection server_3;
|
|
sync_with_master;
|
|
|
|
--echo # On server_3
|
|
SHOW TABLES IN test_8428;
|
|
SELECT * from test_8428.t1;
|
|
|
|
# Cleanup
|
|
connection server_1;
|
|
DROP DATABASE test_8428;
|
|
--source include/rpl_end.inc
|
|
--echo # End of test
|
|
|