Bannister, Mark wrote:
If we're primarily adding or deleting entire objects, however,
not modifying single attributes,
won't delta-syncrepl just fall back to syncrepl anyway?
Can't you change your modification process to modify entries instead of
deleting and re-adding them?
When implementing custom sync jobs I always try to minimize write requests to
the providers to avoid the replication storm needed. Mainly this is what
python-ldap's sub-module ldap.modlist.modifyModlist() is for. Of course you
have to read all the old entries but that's way less load.
This also has the advantage that the entryUUID is kept which you can use for
robust syncing to other systems even in the case the DN is changed. You also
will have a better accesslog.
And this still doesn't change the fact that I'm now going to
have to spin
up 10-20 LDAP replicas on a single machine to get around the
single-threaded replication engine problem.
This is the concept of "replication hubs". You can do this to spread the