Hi Kristian,
Your description is not accurate. If there are no slaves ready to acknowledge a transaction, after a timeout the status variable Rpl_semi_sync_master_clients in the master becomes 0. The master itself, though, remains able to perform semi-synch operations. As soon as one of the slaves is enabled, the variable Rpl_semi_sync_master_clients is incremented and semi-synch replication resumes.
HTH

Giuseppe


On 28 Dec 2015 at 13:17:10 , Kristian Nielsen (knielsen@knielsen-hq.org) wrote:
Hi Jonas (or anyone else who may know),

If I understand correctly, semisync replication has a timeout for how long
it will wait for a slave to acknowledge transactions. If the timeout is
exceeded, semisync is turned off on the master.

Do you know if there is a facility to avoid semisync being turned off
automatically in this case, maybe instead fail and roll back the master
transaction?

I was thinking at Google you might already have needed and implemented this
(merged or not merged into MariaDB yet), or you may be aware of a patch by
someone else for this?

Thanks, and merry Christmas!

- Kristian.

_______________________________________________
Mailing list: https://launchpad.net/~maria-developers
Post to : maria-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~maria-developers
More help : https://help.launchpad.net/ListHelp