Bug #94730 Kill slave may cause start slave to report an error.
Submitted: 21 Mar 2019 3:35 Modified: 26 Mar 2019 7:00
Reporter: kfpanda kf Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Server: Replication Severity:S3 (Non-critical)
Version:5.7 OS:Any
Assigned to: CPU Architecture:Any

[21 Mar 2019 3:35] kfpanda kf
Description:
Hi,
You can run the test case rpl_bug_rli_repository.test below to reproduce the problem.

===================> file: rpl_bug_rli_repository.test
--source include/master-slave.inc          
--source include/have_gtid.inc             
                                           
--echo # test                              
--connection slave                         
stop slave;                                
reset slave;                               
start slave;                               
                                           
--echo # kill and restart slave            
--connection slave                         
--source include/kill_mysqld.inc           
--let $rpl_server_number= 2                
--source include/rpl_start_server.inc      
--source include/start_slave.inc           
                                           
--echo # cleanup                           
--connection master                        
--source include/rpl_end.inc               

===================> file: rpl_bug_rli_repository-master.opt
--gtid_mode=on --enforce_gtid_consistency=true 

===================> file: rpl_bug_rli_repository-slave.opt
--gtid_mode=on --enforce_gtid_consistency=true --relay_log_recovery=on

How to repeat:
Hi,
You can run the test case rpl_bug_rli_repository.test below to reproduce the problem.

===================> file: rpl_bug_rli_repository.test
--source include/master-slave.inc          
--source include/have_gtid.inc             
                                           
--echo # test                              
--connection slave                         
stop slave;                                
reset slave;                               
start slave;                               
                                           
--echo # kill and restart slave            
--connection slave                         
--source include/kill_mysqld.inc           
--let $rpl_server_number= 2                
--source include/rpl_start_server.inc      
--source include/start_slave.inc           
                                           
--echo # cleanup                           
--connection master                        
--source include/rpl_end.inc               

===================> file: rpl_bug_rli_repository-master.opt
--gtid_mode=on --enforce_gtid_consistency=true 

===================> file: rpl_bug_rli_repository-slave.opt
--gtid_mode=on --enforce_gtid_consistency=true --relay_log_recovery=on

Suggested fix:
None
[21 Mar 2019 3:42] kfpanda kf
By executing the test case above, you will find that you encountered an error while executing start salve.

Here is some information from the error log:
...
2019-03-21T03:25:34.282832Z 0 [ERROR] Error during --relay-log-recovery: Could not locate rotate event from the master.
2019-03-21T03:25:34.284887Z 0 [ERROR] Slave: Failed to initialize the master info structure for channel '';
its record may still be present in 'mysql.slave_master_info' table, consider deleting it.
2019-03-21T03:25:34.284899Z 0 [ERROR] Failed to create or recover replication info repositories.
...
2019-03-21T03:25:34.736025Z 2 [ERROR] Slave SQL for channel '': Slave failed to initialize relay log info structure from the repository, Error_code: 1872 safe_process[26739]: Child process: 26740, killed by signal: 9
[22 Mar 2019 5:57] MySQL Verification Team
Hello kfpanda,

Thank you for the report.
Imho this is duplicate of Bug #93397, please see Bug #93397

Thanks,
Umesh
[26 Mar 2019 7:00] kfpanda kf
In which version will this problem be fixed?