mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-12-25 00:59:45 -05:00
ITS#5376, #5378 delta-sync should fallback in other cases too
This commit is contained in:
parent
f0bb1739a7
commit
d9dac0c8bc
1 changed files with 11 additions and 4 deletions
|
|
@ -834,10 +834,17 @@ do_syncrep2(
|
|||
syncCookie.ctxcsn )
|
||||
{
|
||||
rc = syncrepl_updateCookie( si, op, psub, &syncCookie );
|
||||
} else if ( rc == LDAP_NO_SUCH_OBJECT ) {
|
||||
rc = LDAP_SYNC_REFRESH_REQUIRED;
|
||||
si->si_logstate = SYNCLOG_FALLBACK;
|
||||
ldap_abandon_ext( si->si_ld, si->si_msgid, NULL, NULL );
|
||||
} else switch ( rc ) {
|
||||
case LDAP_ALREADY_EXISTS:
|
||||
case LDAP_NO_SUCH_OBJECT:
|
||||
case LDAP_NO_SUCH_ATTRIBUTE:
|
||||
case LDAP_TYPE_OR_VALUE_EXISTS:
|
||||
rc = LDAP_SYNC_REFRESH_REQUIRED;
|
||||
si->si_logstate = SYNCLOG_FALLBACK;
|
||||
ldap_abandon_ext( si->si_ld, si->si_msgid, NULL, NULL );
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
} else if ( ( rc = syncrepl_message_to_entry( si, op, msg,
|
||||
&modlist, &entry, syncstate ) ) == LDAP_SUCCESS )
|
||||
|
|
|
|||
Loading…
Reference in a new issue