Bug #89381 Rolling upgrading Group Replication using packages
Submitted: 24 Jan 2018 12:53 Modified: 7 Mar 2018 12:44
Reporter: Geert Vanderkelen Email Updates:
Status: No Feedback Impact on me:
None 
Category:MySQL Server: Group Replication Severity:S2 (Serious)
Version:8.0.4 OS:Debian (9.3)
Assigned to: CPU Architecture:Any
Tags: group_replication, packaging

[24 Jan 2018 12:53] Geert Vanderkelen
Description:
An issue similar or exactly like bug#85221: when upgrading or installing a MySQL 8.0.4, SQL is executed and logged in the binary log. The problem is that an instance part of a group (replication), can not join.

This problem was also seen with 8.0.3, but there I "fixed" it using group_replication_allow_local_disjoint_gtids_join. Since this option is now gone in 8.0.4, I seem not to be able to get instance easily join the group using packages (in this case official MySQL APT).

How to repeat:
* Setup Group Replication with 3 MySQL servers.
* Nuke 1 and reinstall the MySQL server (no data dir).
* Setup GR again.
* Let is join the group.

[MY-011254] Plugin group_replication reported: 'This member has more executed transactions than those present in the group. Local transactions: fbaa1411-0101-11e8-a8c9-080027208f01:1 > Group transactions: 9bb11fc5-004d-11e8-8c79-080027208f01:1,
9bbb773c-004d-11e8-a7ac-0800275b8992:1,
9bd04b13-004d-11e8-bb77-08002793d28b:1,
ca6717e3-04fe-4761-9377-7bbff28c9743:1-4'

mysql> show binlog events;
+---------------+-----+----------------+-----------+-------------+--------------------------------------------------------------------------------------+
| Log_name      | Pos | Event_type     | Server_id | End_log_pos | Info                                                                                 |
+---------------+-----+----------------+-----------+-------------+--------------------------------------------------------------------------------------+
| binlog.000001 |   4 | Format_desc    |      9801 |         124 | Server ver: 8.0.4-rc-log, Binlog ver: 4                                              |
| binlog.000001 | 124 | Previous_gtids |      9801 |         151 |                                                                                      |
| binlog.000001 | 151 | Gtid           |      9801 |         220 | SET @@SESSION.GTID_NEXT= 'fbaa1411-0101-11e8-a8c9-080027208f01:1'                    |
| binlog.000001 | 220 | Query          |      9801 |         360 | use `mysql`; ALTER USER 'root'@'localhost' IDENTIFIED WITH 'auth_socket' /* xid=4 */ |
| binlog.000001 | 360 | Stop           |      9801 |         379 |                                                                                      |
+---------------+-----+----------------+-----------+-------------+--------------------------------------------------------------------------------------+

Suggested fix:
Maybe a SET SQL_LOG_BIN=0 ?
[24 Jan 2018 13:01] Geert Vanderkelen
A mighty RESET MASTER works to get instance join the group, but it feels blah.
[26 Jan 2018 18:32] Anibal Pinto
Hi Geert,

thanks for the info and time to report this.

I am having some issues reproducing the problem, can you explain the setup/commands that you used?

Thanks
[7 Feb 2018 12:44] MySQL Verification Team
Please see prior comment.
[8 Mar 2018 1:00] Bugs System
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".