[Date Prev][Date Next] [Chronological] [Thread] [Top]

syncrepl refreshAndPersist, interval= in 2.2.8 (ITS#3064)



Full_Name: Martin Evans
Version: 2.2.8
OS: Solaris 8
URL: 
Submission from: (NULL) (138.37.8.140)


In syncrepl, if you happen to have the interval option set in your syncrepl
config directive and have refreshAndPersist, the consumer slapds loose their
connection (permanently) to the provider slapd. If you properly omit, the
interval directive, then they attempt to reconnect after 60 seconds.

There is a line in config.c that is causing this:

if ( si->si_type == LDAP_SYNC_REFRESH_AND_PERSIST ) {
				si->si_interval = 0;
			} else {

This causes the sheduler thingy not to reschedule the connection (in
ldap_pvt_runqueue_resched). It resets earlier work done by this bit:

} else if ( !strncasecmp( val, "refreshAndPersist",
				sizeof("refreshAndPersist")-1 ))
			{
				si->si_type = LDAP_SYNC_REFRESH_AND_PERSIST;
				si->si_interval = 60;
			} else {

I hope that is useful to you.

Kind regards,
Martin.