Patch: multi-master-check

Hi,

I wrote a patch to try transfer from all masters when use
multi masters for slave zone.

https://gist.github.com/mimuret/e68b57561dc76214555c0d9718e9ce4d

If master servers are not synchronise master zone,
Sometime, slave zone not updated max serial zone.

For example:
Slave: serial 100
Master1: serial 200
Master2: serial 300

First time, slave tries transfer from Master1,
Slave update serial 200, and not try Master2.

Hi Manabu,

Hi,

I wrote a patch to try transfer from all masters when use multi
masters for slave zone.

Thank you for the patch! I have incorporated it into the codebase.

Small changes I made to the patch: I removed the configure time
option. I kept the #else part in line 286 of the patch (about 1860 in
xfrd.c) to keep non-multi-master-checks the same.

The 4.1.11 release is in RC stage, so this feature has to wait for a
later software release.

Best regards, Wouter

Hi Wouter,

Thank you merge the patch.
but I found a mistake that not tried full zone transfer for a expired zone.

this problem patch is below

xfrd.c
- if(zone->multi_master_first_master == zone->master_num && zone->round_num > 0) {
+ if(zone->multi_master_first_master == zone->master_num && zone->round_num > 0 && zone->state != xfrd_zone_expired) {

Best regards,
Manabu Sonoda

Hi Manabu,

Applied the fix to the code repository, thank you.

Best regards, Wouter