20.01.2022 19:02, Quanah Gibson-Mount пишет:
--On Wednesday, January 19, 2022 4:26 PM +0200 skeletor skeletor@lissyara.su wrote:
Hi. I use delta-sync replication on version 2.4. Sometimes, some records don't send to slave. Insofar as this is delta-sync after a new update slave receive only last update. Therefore slave and master are not consistent. Is it possible run force resync from accesslog to consistent check if all records are present on slave? May be this is a bug on version 2.4 and it already has been fixed in newer version?
master 2.4.57 slave 2.4.55
I'm not quite sure what you mean by sometimes some records don't send to the slave. That would most generally indicate a configuration issue. You would want to see if the record exists in the accesslog DB of the provider corresponding to the time it was added via an ldap operation (obviously, any entries added offline via mechanisms like slapadd would never be replicated). I would also confirm that you do not see REFRESHes occurring on the consumer vs the provider. I would also confirm that you haven't run the accesslog database out of space preventing it from recording operations (the MDB maxsize for the accesslog db).
I mean that records are present on master, present at accesslog but not present on slave. Below, what exactly I mean:
- master reqMod: entryCSN:+ 20220119115618.595929Z#000000#000#000000 reqMod: entryCSN:+ 20220119134148.182859Z#000000#000#000000 reqMod: entryCSN:+ 20220119135935.992674Z#000000#000#000000 reqMod: entryCSN:+ 20220119140414.357271Z#000000#000#000000
- accesslog reqMod: entryCSN:+ 20220119115618.595929Z#000000#000#000000 reqMod: entryCSN:+ 20220119134148.182859Z#000000#000#000000 reqMod: entryCSN:+ 20220119135935.992674Z#000000#000#000000 reqMod: entryCSN:+ 20220119140414.357271Z#000000#000#000000
- slave reqMod: entryCSN:+ 20220119115618.595929Z#000000#000#000000 reqMod: entryCSN:+ 20220119140414.357271Z#000000#000#000000
Slave doesn't have 2 middle transactions.
It's a development evronment with a several (about 10-15 of all) records, so, the MDB maxsize wasn't reached.
In this case I simulated different problems which can cause in production: network errors between master/slave, restart master, restart slave. So, i did next
- restarted master and after added a data - restarted slave and after added a data - was closed and after added and after opened connections by firewall
All of data were added when master was online, because I always use a command:
openldapadd -H ldap://127.0.0.1 -W -D cn=admin,ou=admin,dc=domain,dc=com -f user.ldif.
Otherwise, I couldn't added data because it couldn't connect via host 127.0.0.1, because server was down. Are you agree with me?