Bug #74683 | Ignorable events do not work and are not tested | ||
---|---|---|---|
Submitted: | 4 Nov 2014 14:17 | Modified: | 2 Mar 2015 12:56 |
Reporter: | Sven Sandberg | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: Replication | Severity: | S2 (Serious) |
Version: | 5.6 | OS: | Any |
Assigned to: | CPU Architecture: | Any |
[4 Nov 2014 14:17]
Sven Sandberg
[12 Feb 2015 12:27]
Laurynas Biveinis
$ git show -s ca7bd0a commit ca7bd0a7f490a3e679483ee67791212865ce1470 Author: Daogang.qu <bill.qu@oracle.com> Date: Sun Nov 16 16:16:13 2014 +0800 Bug#19949915 IGNORABLE EVENTS DO NOT WORK AND ARE NOT TESTED In 5.6, Ignorable log events were introduced. These events have the flag LOG_EVENT_IGNORABLE_F flag (0x80) set in the flags field. When the server (specifically, the replication receiver and applier threads) sees an event with a type code it does not recognize, the server is supposed to check if this flag is set. If the flag is not set, the server generates an error and stops; if the flag is set, the server ignores the event. The purpose is to allow future server versions to introduce new event types that the slave can ignore (such as informational event types). However, this does not work, since the slave applyer thread explicitly checks if the type code is in the range of known event types, and reports an error, before it goes further and checks if the event is ignorable. To fix the problem, the slave applyer thread does not check if this is a known event type any more. And we also remove unnecessary check for PREVIOUS_GTIDS_LOG_EVENT, then we can replicate from 5.7 with WL#7592 and disabled gtid_mode to 5.6 with disabled gtid_mode without introducing a new type code for PREVIOUS_GTIDS_LOG_EVENT in 5.7.
[12 Feb 2015 12:28]
Laurynas Biveinis
Is the bug status up to date?
[2 Mar 2015 12:56]
David Moss
The following was added to the 5.6.23 and 5.7.6 changelogs with commit 5345: Ignorable log events were introduced in MySQL 5.6, but were found to not be functioning correctly. This has now been fixed.
[2 Mar 2015 13:15]
David Moss
Posted by developer: The following was added to the 5.6.23 and 5.7.6 changelogs with commit 5345: Ignorable log events were introduced in MySQL 5.6, but were found to not be functioning correctly. This has now been fixed.