← Back to team overview

maria-discuss team mailing list archive

Semi-sync replication hangs when changing binlog filename.

 

Hi,


I am using semi-sync replication with the `rpl_semi_sync_master_timeout` set to a very high value to ensure commits aren't committed on the master unless they have been replicated to the slave.


However whenever the binlog filename changes the replication stalls indefinitely.

A trace of this interaction between the master and the semi-sync slave is here:

https://gist.github.com/josephglanville/e87ae96b9be9125427b58cd3a43d5c1e


The semi-sync settings I have configured on the master are:

rpl_semi_sync_master_wait_point = "AFTER_SYNC"

rpl_semi_sync_master_timeout = 18446744073709551615 # effectively infinite as we don't want to fallback to async repl

rpl_semi_sync_master_enabled = 1

rpl_semi_sync_master_wait_no_slave = 1 # don't allow writes if slave isn't connected


Up until the binlog filename change everything works as expected.


Anyone have any ideas on how to fix the problem or is this a bug in semi-sync replication?


Joseph.

Follow ups