소스 검색

Bug 497199 - Skip dirsync if disconnected during incremental update

If some sort of error occurs during the sending updates to AD phase
of an incremental winsync update, we still attempt to send the dirsync
control to AD.  This can cause spurious error messages to be logged to
the errors log stating that we can't send the control since we are not
connected to AD anymore.

This patch simply skips sending the dirsync control if we encountered
an error sending updates to AD.
Nathan Kinder 16 년 전
부모
커밋
7cdc2ad5d4
1개의 변경된 파일6개의 추가작업 그리고 2개의 파일을 삭제
  1. 6 2
      ldap/servers/plugins/replication/windows_inc_protocol.c

+ 6 - 2
ldap/servers/plugins/replication/windows_inc_protocol.c

@@ -864,8 +864,12 @@ windows_inc_run(Private_Repl_Protocol *prp)
 
 	if ( run_dirsync )
 	{
-		windows_dirsync_inc_run(prp);
-		windows_private_save_dirsync_cookie(prp->agmt);
+		/* Don't run dirsync if we encountered
+		 * an error when sending updates to AD. */
+		if (rc == UPDATE_NO_MORE_UPDATES) {
+			windows_dirsync_inc_run(prp);
+			windows_private_save_dirsync_cookie(prp->agmt);
+		}
 		run_dirsync = PR_FALSE;
 	}