Bug #31393 Last IO Error not cleared when IO thread running
Submitted: 4 Oct 2007 11:35 Modified: 1 May 2008 11:34
Reporter: Geert Vanderkelen Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Server: Replication Severity:S2 (Serious)
Version:5.1.22-6.3.3 OS:Any
Assigned to: Assigned Account CPU Architecture:Any

[4 Oct 2007 11:35] Geert Vanderkelen
Description:
When you setup a Slave and you make a mistake in the CHANGE MASTER statement, like wrong password for the replication user, fixing this and starting the slave again doesn't rest the Last_IO_Error. So even though replication is working fine, Last_IO_Err* fields in SHOW SLAVE STATUS is showing the original error.
Restarting the mysqld makes it OK (when slave was corrected before), just STOP/START the slave not.

How to repeat:
mysqld A, mysqld B

mysqld B has some kind of unavailability as master (e.g. replication rights missing, binlog pos not found, etc.)

mysqld A> change master to ... 'mysqld B' ...;
mysqld A> start slave;
mysqld A> show slave status;
...
Slave_IO_Running: No
Slave_SQL_Running: Yes
...
Seconds_Behind_Master: NULL
...
Last_IO_Errno: 1045
Last_IO_Error: error connecting to master 'repl@localhost:3307' - retry-time: 60 retries: 86400
...

resolve the error on mysqld B:

mysqld A> show slave status;
...
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
...
Seconds_Behind_Master: 0
...
Last_IO_Errno: 1045
Last_IO_Error: error connecting to master 'repl@localhost:3307' - retry-time: 60 retries: 86400
...
[4 Oct 2007 11:36] Geert Vanderkelen
Verified using CGE 5.1.22-6.3.3, so also main 5.1.22 affected. (Row based replication was used, but probably not important?)
[1 May 2008 11:34] Andrei Elkin
Bug #34654 is the parent.