Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
10.1.14
-
None
-
Ubuntu 14.04
Description
Hi,
I am having an issue with MariaDB semi-sync replication.
Setting up replication between master and slaves works as expected but when the master begins writing to a new binlog file replication stalls on waiting for an ack from the semi-sync slave.
I have the fallback to async set very high because I basically don't want the server to ever commit writes to the master that aren't committed to the slave.
I have discussed this somewhat on the mailing list and have created this gist which reliably reproduces the issue: https://gist.github.com/josephglanville/c9a69b02de319ee06aef1a8d787bcce3
It's possible this is a configuration issue rather than a bug, config for master and slave is generated in the scripts in the gist so if that is the case hopefully it's an easy fix.
Joseph.
Attachments
Activity
Field | Original Value | New Value |
---|---|---|
Fix Version/s | 10.1.17 [ 22102 ] | |
Resolution | Fixed [ 1 ] | |
Status | Open [ 1 ] | Closed [ 6 ] |
Workflow | MariaDB v3 [ 76650 ] | MariaDB v4 [ 150756 ] |
Switching to AFTER_COMMIT works around the problem but doesn't accomplish loss-less replication.
Discussion on the mailing list indicates this is likely a race updating MYSQL_BIN_LOG::log_file_name as the after_sync callback is called with the new file name but the last offset of the previous binlog file.