mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 21:12:26 +01:00
5833903889
When using mixed mode the record values stored inside the storage engine differed from the ones computed from the row event. This happened because the prepare_record function was calling empty_record macro causing some don't care bits to be left set. Replacing the empty_record plus explicitly setting defaults with restore_record to restore the record default values fixes this.
32 lines
1.5 KiB
Text
32 lines
1.5 KiB
Text
stop slave;
|
|
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
|
reset master;
|
|
reset slave;
|
|
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
|
start slave;
|
|
DROP TABLE IF EXISTS t1,t2,t3,t4,t5,t6,t7,t8;
|
|
CREATE TABLE t1 (`bit_key` bit, `bit` bit, key (`bit_key` )) ENGINE=MyISAM;
|
|
CREATE TABLE t2 (`bit_key` bit(4), `bit` bit, key (`bit_key` )) ENGINE=MyISAM;
|
|
CREATE TABLE t3 (`bit_key` bit(7), `bit` bit, key (`bit_key` )) ENGINE=MyISAM;
|
|
CREATE TABLE t4 (`bit_key` bit(8), `bit` bit, key (`bit_key` )) ENGINE=MyISAM;
|
|
CREATE TABLE t5 (`bit_key` bit(9), `bit` bit, key (`bit_key` )) ENGINE=MyISAM;
|
|
CREATE TABLE t6 (`bit_key` bit(14), `bit` bit, key (`bit_key` )) ENGINE=MyISAM;
|
|
CREATE TABLE t7 (`bit_key` bit(15), `bit` bit, key (`bit_key` )) ENGINE=MyISAM;
|
|
CREATE TABLE t8 (`bit_key` bit(16), `bit` bit, key (`bit_key` )) ENGINE=MyISAM;
|
|
INSERT INTO `t1` ( `bit` ) VALUES ( 0 );
|
|
DELETE FROM `t1` WHERE `bit` < 2 LIMIT 4;
|
|
INSERT INTO `t2` ( `bit` ) VALUES ( 0 );
|
|
DELETE FROM `t2` WHERE `bit` < 2 LIMIT 4;
|
|
INSERT INTO `t3` ( `bit` ) VALUES ( 0 );
|
|
DELETE FROM `t3` WHERE `bit` < 2 LIMIT 4;
|
|
INSERT INTO `t4` ( `bit` ) VALUES ( 0 );
|
|
DELETE FROM `t4` WHERE `bit` < 2 LIMIT 4;
|
|
INSERT INTO `t5` ( `bit` ) VALUES ( 0 );
|
|
DELETE FROM `t5` WHERE `bit` < 2 LIMIT 4;
|
|
INSERT INTO `t6` ( `bit` ) VALUES ( 0 );
|
|
DELETE FROM `t6` WHERE `bit` < 2 LIMIT 4;
|
|
INSERT INTO `t7` ( `bit` ) VALUES ( 0 );
|
|
DELETE FROM `t7` WHERE `bit` < 2 LIMIT 4;
|
|
INSERT INTO `t8` ( `bit` ) VALUES ( 0 );
|
|
DELETE FROM `t8` WHERE `bit` < 2 LIMIT 4;
|
|
DROP TABLE t1, t2, t3, t4, t5, t6, t7, t8;
|