From: Howard Chu Date: Sat, 24 Apr 2021 14:38:02 +0000 (+0100) Subject: ITS#9534 fix delta-sync startup X-Git-Tag: OPENLDAP_REL_ENG_2_6_0~247 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8a72584bd12fee680913b3e638f174fce8094a7e;p=thirdparty%2Fopenldap.git ITS#9534 fix delta-sync startup When transitioning from plain refresh to delta mode, don't wait for a reschedule, go immediately. Partially reverts f2740c79b38a986dfac78bc98c62e5f74ad9224e --- diff --git a/servers/slapd/syncrepl.c b/servers/slapd/syncrepl.c index 4a64b330dc..5174509768 100644 --- a/servers/slapd/syncrepl.c +++ b/servers/slapd/syncrepl.c @@ -2027,6 +2027,7 @@ do_syncrepl( if ( !si->si_schemachecking ) op->o_no_schema_check = 1; +reload: /* Establish session, do search */ if ( !si->si_ld ) { si->si_refreshDelete = 0; @@ -2065,6 +2066,8 @@ do_syncrepl( op->o_ndn = op->o_bd->be_rootndn; rc = do_syncrep2( op, si ); if ( rc == LDAP_SYNC_REFRESH_REQUIRED ) { + if ( si->si_logstate == SYNCLOG_LOGGING ) + goto reload; /* give up but schedule an immedite retry */ rc = SYNC_PAUSED; }