On Thu, Apr 06, 2017 at 02:48:45PM +0000, Frank.Swasey@uvm.edu wrote:
On Wed, 5 Apr 2017 at 8:18am, ondra@mistotebe.net wrote:
AFAIK, LDAP doesn't forbid it so I don't see that going away.
Well, then that means that the current behavior is a bug in either the syncrepl implementation or the accesslog recording. Since the MASTER gets updated correctly and the REPLICAs (and other MMR members) all fall down when attempting to process the accesslog entry.
Yes, they might reject the log entry and fall back to regular syncrepl in the way they would in case of a conflict (which is mostly fine), or the interpretation might seem to fit and a chance is that it's different that the actual modification, causing the servers to silently get out of sync.
It does need a fair bit of attention, the problem is it's something that would require a format change and there are already existing consumers that would be affected.
I'm going to try with a patch to record something like this: regMod: sn:= George regMod: : regMod: sn:= George
Together with the relevant syncrepl updates.
While consumers would still be affected, this should be quite rare and the current handling of that case would have been incorrect anyway. The change would then only make the silent failure a noisy one.
Noisy in that the replica/mmr falls over dead or just logs more stuff?
In case of delta-syncrepl, it should reject it and fall back to regular syncrepl. I can't vouch for anything else that consumes accesslog data obviously.
To be honest, my goal is consistency. I want the replicas (and MMR mates) to all wind up with the same values the master has.
Would you be able to confirm the patch in my previous email does the right thing for you?