Hi
Slave servers that are replicating changes using the refreshAndPersist operation type do not get updates from the master server until they are restarted. They will not be notified of any other changes. If I set the replication protocol operation type to refreshOnly and a suitable interval, the changes do get replicated as expected.
I have verified that syncrepl with type=refreshAndPersist works with openldap2-2.2.24 and 2.2.27) also works as it should. However neither the 2.3.19-x (which is the current version on my platform - SLES 10, kernel 2.6.16) nor 2.3.30 work as expected.
I have traversed the net and tried numerous configuration variations, but not found anything that changes the behavior. I always end up having to restart the slave to get the updates over. Needless to say that I have tried on different hardware (all x86-based) and all on complete fresh installations of the base OS.
When loading the consumer/replica/slave, the apparently connects to the provider (Config: ** successfully added syncrepl "ldap://host1.nts.com:389").
There seems to be many people who have this working, but I have not yet been able to find a configuration example that works.
Snip of consumer config (full config files attached) : ############################### database bdb suffix dc=example,dc=com directory /var/opt/ldap/master rootdn "cn=admin,dc=example,dc=com" rootpw secret index entryUUID,entryCSN,objectClass eq,pres index cn,displayname,uid,sn,givenname,telephoneNumber sub,eq,pres cachesize 250000 checkpoint 50 5 idlcachesize 750000 mode 0600 dbconfig set_cachesize 0 268435456 1 dbconfig set_lg_regionmax 262144 dbconfig set_lg_bsize 2097152 access to * by self write by dn.base="cn=admin,dc=example,dc=com" write by anonymous auth by * read syncrepl rid=101 provider=ldap://host1.nts.com type=refreshAndPersist retry="10 10 60 +" searchbase="dc=example,dc=com" filter="(objectClass=*)" scope=sub schemachecking=off sizelimit=500000 timelimit=360000 bindmethod=simple binddn="cn=admin,dc=example,dc=com" credentials=secret updateref ldap://host1.nts.com ###############################
Snip of provider : ############################### overlay syncprov syncprov-checkpoint: 100 10 syncprov-sessionlog: 3000
database bdb suffix dc=example,dc=com directory /var/opt/ldap/master rootdn "cn=admin,dc=example,dc=com" rootpw secret index entryUUID,entryCSN,objectClass eq,pres index cn,displayname,uid,sn,givenname,telephoneNumber sub,eq,pres cachesize 250000 checkpoint 50 5 idlcachesize 750000 mode 0600 dbconfig set_cachesize 0 268435456 1 dbconfig set_lg_regionmax 262144 dbconfig set_lg_bsize 2097152 access to * by self write by dn.base="cn=admin,dc=example,dc=com" write by anonymous auth by * read ###############################
Am I missing something or is refreshAndPersist broken ?
Any hints would be most appreciated.
Thank you
Andreas Taschner Support Engineer Novell Inc.