Bug #22583 | RBR between MyISAM and non-MyISAM tables containing a BIT field does not work | ||
---|---|---|---|
Submitted: | 22 Sep 2006 8:20 | Modified: | 17 Apr 2007 19:44 |
Reporter: | Mats Kindahl | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: Row Based Replication ( RBR ) | Severity: | S3 (Non-critical) |
Version: | 5.1 | OS: | Any (ALL) |
Assigned to: | Mats Kindahl | CPU Architecture: | Any |
[22 Sep 2006 8:20]
Mats Kindahl
[14 Dec 2006 4:23]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/16924 ChangeSet@1.2308, 2006-12-14 05:23:31+01:00, mats@romeo.(none) +6 -0 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.
[12 Feb 2007 15:46]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/19699 ChangeSet@1.2308, 2007-02-12 16:46:42+01:00, mats@romeo.(none) +38 -0 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.
[14 Feb 2007 17:46]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/19910 ChangeSet@1.2409, 2007-02-14 19:45:48+02:00, aelkin@dsl-kpogw6-fe8ddc00-181.dhcp.inet.fi +3 -0 wl3557 conflict detection auxilary cset consisting of merging bug#22583 fixes (Feb 12th) with my local tree. To be removed after the bug's patch will be merged with 5.1-rpl.
[19 Feb 2007 17:51]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/20087 ChangeSet@1.2410, 2007-02-19 14:24:49+02:00, aelkin@dsl-kpogw6-fe8ddc00-181.dhcp.inet.fi +8 -0 WL#3557 Conflict detection This one is an intermediate commit reflecting the piece of work without ndb's specific to pack only changed fields into rows-event. Additionally, Write_rows event does not hold info which of REPLACE of INSERT is the parent. This make the event useless to find out DUP_KEY conflict on slave because if the parent is REPLACE slave has to accept the event. The class needs extending with that bit of info in order to be able to catch DUP_KEY conflict. At the moment not-merged (perhaps not latest) patch for bug#22583 is used so that I will need to "subtract" these changes after the patch will be finally pushed and remerge with the final one.
[2 Mar 2007 10:41]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/20995 ChangeSet@1.2410, 2007-03-02 12:18:04+02:00, aelkin@dsl-kpogw6-fe8ddc00-181.dhcp.inet.fi +8 -0 WL#3557 Conflict detection This one is an intermediate commit reflecting the piece of work without ndb's specific to pack only changed fields into rows-event. Activation of conflict detection is done with --slave-conflict-detection or namesake global system variable. Slave server stops when there is the conflict unless the user specifies --slave-skip-errors=ER_REPLICATION_CONFLICT. In the latter case, the accident will be error-logged. The patch engages HA_ERR_RECORD_CHANGED to be reported from do_exec_row about mismatch of OR and BI even though the actual code returned from lookup routines may vary. At the moment not-merged (perhaps not latest) patch for bug#22583 is used so that I will need to "subtract" these changes after the patch will be finally pushed and remerge with the final one.
[7 Mar 2007 11:41]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/21356 ChangeSet@1.2414, 2007-03-07 11:54:32+01:00, mats@romeo.(none) +16 -0 BUG#22583 (RBR between MyISAM and non-MyISAM tables does not work): Post-merge fixes.
[8 Mar 2007 8:03]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/21461 ChangeSet@1.2473, 2007-03-08 09:02:44+01:00, mats@romeo.(none) +1 -0 BUG#22583: RBR between MyISAM and non-MyISAM tables containing a BIT field does not work Fix to prevent MyISAM from reading data from NULL BLOB.
[20 Mar 2007 7:52]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/22324 ChangeSet@1.2473, 2007-03-20 08:52:01+01:00, mats@romeo.(none) +37 -0 BUG#22583: RBR between MyISAM and non-MyISAM tables containing a BIT field does not work Fix to prevent MyISAM from reading data from NULL BLOB. Fix to make record comparison independent of values of unused bits in record. Updating binlog positions in tests.
[27 Mar 2007 15:22]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/23027 ChangeSet@1.2482, 2007-03-27 17:21:47+02:00, mats@romeo.(none) +1 -0 BUG#22583 (RBR between MyISAM and non-MyISAM tables containing a BIT field does not work): Enabling previously disabled test.
[27 Mar 2007 15:29]
Mats Kindahl
This patch introduces a change of binary log format that is incompatible with the format preceeding this patch. It should be documented that the binary log format is incompatible and that using old binary logs with new slaves will cause slave to stop.
[31 Mar 2007 23:55]
Bugs System
Pushed into 5.1.18-beta
[16 Apr 2007 11:04]
Mats Kindahl
Never mind the wordings of the conflict detection WL#3557: this was a too eager tool that decided that a patch for WL#3557 was actually for BUG#22583. With the introduction of the patch for BUG#27779, we now have backward compatibility. However, from what I can tell, the patch for BUG#27779 goes into 5.1.19 and the patch for BUG#22583 goes into 5.1.18. It means that 5.1.18 cannot read binary logs generated by a server that is before 5.1.18, but that 5.1.19 can.
[17 Apr 2007 19:44]
Paul DuBois
Noted in 5.1.18 changelog. Row-based replication of MyISAM to non-MyISAM tables did not work correctly for BIT columns. This has been corrected, but the fix introduces an incompatibility into the binary log format. We recommend that users affected by this problem wait for MySQL 5.1.19, which addresses the incompatibility.
[20 Apr 2007 17:16]
Bugs System
Pushed into 5.1.18-beta
[24 Apr 2007 17:26]
Paul DuBois
The fix for the incompatibility made it into 5.1.18, so I have removed the sentence from the changelog entry about waiting for 5.1.19. See Bug#27779.