hyc@symas.com wrote:
Michael Ströder wrote:
hyc@symas.com wrote:
I was considering returning LDAP_BUSY for this case, but it may make more sense to return a REFERRAL to the provider instead. (Although again, if we have two MMR servers pointed at each other starting at the same time, they would just refer to each other and clients would get nowhere until one of them finishes its refresh.)
IMO referrals are harmful. Just returning LDAP_BUSY seems best to me because if reliable HA is really important for a deployment you have decent load-balancers in front of your LDAP server which should do a proper health-check.
Agreed.
Just a question: Is this database-specific? Maybe only one of several DBs is in this initial syncrepl phase and access to others should simply work.
Overlays are db-specific.
A similar feature was already implemented, and never documented:
commit 9e00b6cc6ce2857490b33218bdaf1339319c5f60 Author: Howard Chu hyc@openldap.org Date: Fri Apr 15 11:13:38 2011 -0700
Add strictrefresh syncrepl option
Only affects delta-syncrepl - stop listening to clients while refresh is running.
This is a bit more extreme though, it terminates all client connections and suspends the slapd listeners while a refresh is running. The solution discussed in this ITS would be preferable.