Bug #67929 | Race in bin log dump thread results in slave missing events | ||
---|---|---|---|
Submitted: | 17 Dec 2012 18:13 | Modified: | 3 Apr 2013 18:13 |
Reporter: | Justin Tolmer | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: Replication | Severity: | S2 (Serious) |
Version: | 5.1.63,5.6.9 | OS: | Any |
Assigned to: | CPU Architecture: | Any |
[17 Dec 2012 18:13]
Justin Tolmer
[17 Dec 2012 19:16]
Sveta Smirnova
Thank you for the report. Test passes in my case and, if I understood correctly, it should fail reporting difference between number of records in master and slave tables. Please confirm or explain.
[17 Dec 2012 20:18]
Justin Tolmer
Against which version did you test? And I assume you used a debug build since the test requires that?
[17 Dec 2012 20:19]
Sveta Smirnova
Thank you for the feedback. Against 5.1.68. Yes, debug build.
[17 Dec 2012 23:29]
Justin Tolmer
Neither 5.1.67 nor 5.1.68 have been published so I can't test against those releases to know whether the bug has been fixed and / or my test is failing for some other reason when you test on that version. I did verify that my test reproduces the problem consistently on the 5.1.66 code currently available in launchpad. Are you sure that the DBUG_EXECUTE_IF at the bottom of my patch was successfully added to sql_repl.cc when you attempted to reproduce?
[18 Dec 2012 15:01]
Pedro Gomes
Hi Justin This bug was already created on our side and was already in progress, but I must thank you for pin-pointing the problem in such a nice manner. We are now looking into a solution, I hope we can get it soon. Thanks.
[18 Dec 2012 21:49]
Jeremy Cole
Pedro, Could you comment on the Oracle-internal bug number of this bug?
[10 Jan 2013 13:35]
Erlend Dahl
This is a duplicate of an internally filed bug (not yet fixed).
[3 Apr 2013 18:13]
Jon Stephens
Thank you for your bug report. This issue has been committed to our source repository of that product and will be incorporated into the next release. If necessary, you can access the source repository and build the latest available version, including the bug fix. More information about accessing the source trees is available at http://dev.mysql.com/doc/en/installing-source.html
[3 Apr 2013 18:14]
Jon Stephens
Fixed in 5.1+. Documented fix in the 5.1.69, 5.5.31, 5.6.11, and 5.7.1 changelogs, as follows: It was possible immediately after detecting an EOF in the dump thread read event loop, and before deciding whether to change to a new binary log file, for new events to be written to the binary log concurrently with rotating the log. If log rotation occurred during this window, any events that also occurred at that time were dropped, resulting in loss of data. Now in such cases, steps are taken to make sure that no more events remain before allowing the log rotation to take place. Closed.