diff --git a/servers/slapd/syncrepl.c b/servers/slapd/syncrepl.c
index b3e2f73a80e0e38a72d430255c43b618ee3f9215..d5712363c83687792b3d165534798024a60dd4c1 100644
--- a/servers/slapd/syncrepl.c
+++ b/servers/slapd/syncrepl.c
@@ -1339,6 +1339,7 @@ syncrepl_message_to_op(
 	}
 
 	op->o_callback = &cb;
+	slap_op_time( &op->o_time, &op->o_tincr );
 
 	switch( op->o_tag ) {
 	case LDAP_REQ_ADD:
@@ -1751,6 +1752,7 @@ syncrepl_entry(
 		}
 	}
 
+	slap_op_time( &op->o_time, &op->o_tincr );
 	switch ( syncstate ) {
 	case LDAP_SYNC_ADD:
 	case LDAP_SYNC_MODIFY:
@@ -1821,6 +1823,7 @@ retry_add:;
 					be->be_search( &op2, &rs2 );
 
 					retry = 0;
+					slap_op_time( &op->o_time, &op->o_tincr );
 					goto retry_add;
 				}
 				/* FALLTHRU */
@@ -1863,6 +1866,8 @@ retry_add:;
 				ret = 1;
 				goto done;
 			}
+			if ( dni.wasChanged )
+				slap_op_time( &op->o_time, &op->o_tincr );
 		}
 		if ( dni.wasChanged ) {
 			Modifications *mod, *modhead = NULL;