Hi!


I have two Galera clusters of three nodes each, let's call them cluster A and cluster B.


Cluster B has one member set up as a slave to one of the members in cluster A.


The cluster B member that runs the slave protocol shows it's GTID matches that of the nodes in cluster A, but the other two nodes in cluster B (not running slaves themselves, but in the cluster with the node running as a slave) have GTIDs that are always 4 behind the other nodes.


So just to lay it out again:


A0 5-24-5 - master

A1 5-24-5 

A2 5-24-5


B0 5-24-5 - slave to A0

B1 5-24-1

B2 5-24-1


The  GTIDS stay 4 apart, and replication seems fine.   I add rows on any A cluster node and they show up in all three B nodes.  The GTID on the node running slave stays in sync with the A cluster.


The A0 cluster is set up using xtrabackupv2 for SST.


The A cluster is completely up before doing anything on the B cluster.


The B cluster is started like:

  1. Start B0 as first node in the Galera cluster
  2. mysqldump from A0 to B0 with --gtid.  https://gist.github.com/warnerpr/011cabb876600c33e5bee42d7d0b17d2
  3. Master of B0 is set to A0
  4. Slave is started on B0
  5. B1 and B2 are started and set to join the existing cluster.

Cluster A and B have log_slave_updates = ON.

Details:
B0 Slave - https://gist.github.com/warnerpr/59c287bb201302961742bb89d5035559
B1 - https://gist.github.com/warnerpr/0fb8825e49bce72761e0bdd95b0512d9
A1 Master - https://gist.github.com/warnerpr/91e0df1eb04f425baca3675335639c0f


Any pointers are greatly appreciated!

Paul