MySQL Forums
Forum List  »  Replication

group_replication_applier failure - invalid event according to REQUIRE_ROW_FORMAT
Posted by: Dev Dewboy
Date: March 27, 2022 06:45PM

Hello,
I have a 4 node Group Replication - Primary 5.7.37, 2 x 5.7.37 Read Replicas and a new 8.0.28 Read Replica.
If a procedure utilizes TEMP tables and executes a DROP TEMPORARY TABLE IF EXISTS the 8.0.28 Read Replica errors out with the following error:

Slave I/O for channel 'group_replication_applier': The queue event failed for channel 'group_replication_applier' as an invalid event according to REQUIRE_ROW_FORMAT was found. Error_code: MY-013507

This is traced to a "new" security feature of v8.0 regarding "Replication Privilege Checks" and the solution seems pretty simple. This is straight out of the MySQL document:

mysql> SET sql_log_bin = 0;
mysql> CREATE USER 'priv_repl'@'%.example.com' IDENTIFIED BY 'password' REQUIRE SSL;
mysql> GRANT REPLICATION_APPLIER ON *.* TO 'priv_repl'@'%.example.com';
mysql> SET sql_log_bin = 1;
mysql> STOP GROUP_REPLICATION;
mysql> CHANGE REPLICATION SOURCE TO PRIVILEGE_CHECKS_USER = 'priv_repl'@'%.example.com'
FOR CHANNEL 'group_replication_recovery';
mysql> FLUSH PRIVILEGES;
mysql> START GROUP_REPLICATION;

But after I do the above and restart Group Replication, it fails with:

[ERROR] [MY-011526] [Repl] Plugin group_replication reported: 'This member has more executed transactions than those present in the group. Local transactions: aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa:1-5303619, b0cf4d2d-845a-11ec-a038-005056ad8d00:1 > Group transactions: aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa:1-5303955'

I have also tried restoring to a point prior to the DDL 'group_replication_applier' error, run the above set of commands to "create" an Applier user/grant and it continues to fail with the "executed transactions" error.


Catch 22. How can I get this GRANT on the 8.0 Replica to work without skewing the BINLOG so it can proper recover properly? Is there a way to simply "trust" the Primary/Replica relationship on the v8 instance maybe via a configuration parameter? Reading up on why this "feature" was implemented does nothing for me and so simply either want to turn it off or auto trust.
Any help would be great! Thanks!
DD

Options: ReplyQuote


Subject
Views
Written By
Posted
group_replication_applier failure - invalid event according to REQUIRE_ROW_FORMAT
895
March 27, 2022 06:45PM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.