1

So we have an innodb cluster consisting of 4 nodes. one of the nodes crashed (OS crash), while starting the node it shows the following error:

2022-06-13T06:46:02.529058Z 491 [ERROR] Slave SQL for channel
'group_replication_applier': Relay log read failure: Could not parse relay log
event entry. 
The possible reasons are: the master's binary log is corrupted (you can check
this by running 'mysqlbinlog' on the binary log), the slave's relay log is
corrupted 
(you can check this by running 'mysqlbinlog' on the relay log), a network
problem, or a bug in the master's or slave's MySQL code. If you want to check
the master's binary log or slave's relay log, 
you will be able to know their names by issuing 'SHOW SLAVE STATUS' on this
slave. Error_code: 1594

Up until now, each time it happened we just restored and node from a backup and rejoined the cluster. Is there a way to refetch the logs and reset the position as on a regular master/slave replication?

running mysql 5.7.36

1 Answer 1

0

OK, so basiclly the solution was very simple:)

setting relay_log_recovery=1 automatically recovered the logs from the master.

Taken from MySQL docs (https://dev.mysql.com/doc/refman/5.7/en/replication-options-replica.html)

"If enabled, this variable enables automatic relay log recovery immediately following server startup. The recovery process creates a new relay log file, initializes the SQL thread position to this new relay log, and initializes the I/O thread to the SQL thread position. Reading of the relay log from the source then continues."

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.