Description:
Similarly to bug #81692 when performing a logical backup of a master if relay_log_info_repository=TABLE is set on both master and slave, then inevitably your slave will fail to start miserably with no logical reason as the relay log info from the master will pollute the configuration on the salve.
This is particularly offensive when setting up a slave of a slave.
[ERROR] Failed to open the relay log '/storage/mysql/mysql-relay-bin.000949' (relay_log_pos 58989116).
[ERROR] Could not find target log file mentioned in relay log info in the index file './mysql-relay-bin.index' during relay log initialization.
Temporary Workaround:
Disable relay_log_info_repository and master_info_repository config parameters on the slave.
How to repeat:
Master my.cnf
relay_log_info_repository=TABLE
master_info_repository=TABLE
mysqldump -u root -p --skip-lock-tables --single-transaction --hex-blob --all-databases --triggers --routines --events
Slave my.cnf
relay_log_info_repository=TABLE
master_info_repository=TABLE
Suggested fix:
Option #A
mysqldump should ignore select tables such as slave_relay_log_info when performing an -all-database backup
Option #B
add a new option to mysqldump for the express purposes of setting up a new slave that encompassed option #A
Option #C
If relay_log_info_repository=TABLE is set and a CHANGE MASTER is performed, truncate the mysql.slave_relay_log_info table