Bug #35785 | Replication stops after upgrading to 5.1.23 | ||
---|---|---|---|
Submitted: | 3 Apr 2008 7:32 | Modified: | 9 May 2008 10:19 |
Reporter: | Stefan Hinz | Email Updates: | |
Status: | Can't repeat | Impact on me: | |
Category: | MySQL Server: Documentation | Severity: | S3 (Non-critical) |
Version: | 5.1.23 | OS: | Any |
Assigned to: | Jon Stephens | CPU Architecture: | Any |
[3 Apr 2008 7:32]
Stefan Hinz
[3 Apr 2008 20:51]
Sveta Smirnova
Thank you for the report. This incompatibility is result of bug #28597 and fix of it. Before bug #28597 was introduced binlog index file contained relative paths like ./themis-bin.000074 In time when bug #28597 existed binlog index file containde absolute paths like: /var/lib/mysql/themis-bin.000076 Bug #28597 was fixed in version 5.1.23, so binlog index file contains relative paths again. So behavior is correct. But manual does not have an alert about upgrade between these versions could lead to replication broke. So I set category of the report to "Documentation"
[3 Apr 2008 21:08]
Stefan Hinz
Thanks for turning this into a docs problem! ;-) However, I can't see what the fix is supposed to be. Or should we just state in the docs that you shouldn't upgrade because this will break replication? I don't think so. So please indicate what the docs should say to avoid the problem.
[3 Apr 2008 21:29]
Sveta Smirnova
I think docs should alert: upgrade master from earlier versions to 5.1.18-5.1.22 can lead to creation of invalid binary log index file upgrade master from versions 5.1.18-5.1.22 to 5.1.23 can lead to creation of invalid binary log index file Same for 5.0 and 6.0 branches. Maybe some workaround like "use log-bin=explicit_name" or "reset master" should be indicated.
[6 Apr 2008 7:31]
Stefan Hinz
Maybe mention a workaround?? Because if there's no workaround I wouldn't consider this a documentation bug. Think of the consequences if there's no workaround: Users with a replication setup effectively can't update MySQL!
[7 Apr 2008 17:54]
Sveta Smirnova
I am sorry, missed your workaround from bug #28597. (Workaround: After manually changing the last line recorded by the "old" (5.1.16) server from: ./themis-bin.000075 to: /var/lib/mysql/themis-bin.000075 and restarting the slave server, replication resumes with no issues.) So for this bug one should reverse execute this action: rename /var/lib/mysql/themis-bin.000075 to themis-bin.000075
[7 Apr 2008 22:45]
Stefan Hinz
The workaround I had indicated for the old bug doesn't work. Indeed, that was the first thing I tried, but to no avail. See also my original remark about another (unrelated?) bug. From looking at the error look, I can see that the slaves are trying to read the *very first* binlog file from the master (that's gone away a long time ago). I can't say whether or not that's the reason why the workaround doesn't work this time but I think it is. I'm afraid we need a different workaround this time - please indicate what that should be.
[8 Apr 2008 6:26]
Jon Stephens
Stefan, Did you remove the references to the log files that don't actually exist any longer from the index file? Also, I'm not sure whether or not this is applicable, but you might want to look at http://dev.mysql.com/doc/refman/5.1/en/purge-master-logs.html - especially the last paragraph, added just a couple of days ago, and the bugs referenced therein (Bug #18199, Bug #18453) .
[25 Apr 2008 19:43]
Stefan Hinz
I couldn't make replication start again while I was on MySQL 5.1.23. Upgrading to 5.1.24 magically solved the problem: Without having done anything (except upgrading using MySQL's RPM files) replication started again, and slaves caught up to the master's current position as if the problem had never existed. I'm stunned.