--On Monday, April 01, 2019 3:19 PM +0200 Maxime Besson maxime.besson@worteks.com wrote:
On 3/29/19 8:51 PM, Quanah Gibson-Mount wrote:
Have a secondary server (a replica) of the first. Using cn=config, delete the syncrepl statement from the replica, run slapcat, then re-add the syncrepl statement when you're done. As long as the server is under heavy write traffic and backups take signficant time, you will unfortunately heavily fragment the DB.
Thanks for your suggestion!
In your proposed scenario, is there a difference between removing olcSyncRepl from the replica, and stopping the replica completely, other than the replica being unavailable for read queries during backup ?
Yes, that would work as well.
My understanding is that in both cases, replication would have to catch up with the master with a full present phrase (unless I use a large enough session log).
If you're not using delta-syncrepl (Which is the only replication method I endorse) then yes, that's correct.
Since ITS#8486 and OpenLDAP 2.4.46, it seems that having a large session log is a viable option, but how large could those modification allow the sessionlog to grow? 100K ? 1M entries ?
The sessionlog contains the entry ID of the entries modified, up to the full size of the sessionlog or the total number of entries in the database (i.e., an entry won't be listed more than once in the list). So if you had a sessionlog larger than the number of entries, and every single entry in your DB was modified, it would match the number of entries in the DB. Otherwise, it'll be smaller than that. The sessionlog is also not persistent, so it gets reset on a restart of the master.
--Quanah
--
Quanah Gibson-Mount Product Architect Symas Corporation Packaged, certified, and supported LDAP solutions powered by OpenLDAP: http://www.symas.com