← Back to team overview

maria-discuss team mailing list archive

Re: WL#4925 and multi-source replication

 

Greg <skygreg@xxxxxxxxx> writes:

>> I didn't think that sync_binlog=1 is required anymore for safe reliction.
>>
>> We are always using group commit in MariaDB 10.0 for the master, so
>> the binary log will be synced for each group commit, which is safe.
>>
>
> I have to use it in a DRBD config. When testing this config, I killed
> mysqld with SIGKILL and sync_binlog=0 and failover start binary log in old
> position, that caused duplicates on slaves.
>
> With sync_binlog=1, this happens no more.
>
> How to configure how often group commits are fdatasynced ?

Correct, sync_binlog=1 is still required to ensure consistency between binlog
and innodb. With sync_binlog=1, each group commit is fdatasynced (with a
single binlog fdatasync per group), no further configuration is needed.

You also need innodb_flush_log_at_trx_commit=1, of course.

I am a bit surprised that you got duplicates with SIGKILL of mysqld. I would
have expected crashing the OS kernel (ie. power failure) would be needed for
fdatasync to make any difference?

 - Kristian.


Follow ups

References