diff --git a/servers/slapd/ctxcsn.c b/servers/slapd/ctxcsn.c
index ce6356ab42f39267c898f6b94225ec6bbcd511e5..23a54af7fd67508a4e8ffb488b714a250fe1ea6a 100644
--- a/servers/slapd/ctxcsn.c
+++ b/servers/slapd/ctxcsn.c
@@ -33,7 +33,8 @@ int slap_serverID;
 void
 slap_get_commit_csn(
 	Operation *op,
-	struct berval *maxcsn
+	struct berval *maxcsn,
+	int *foundit
 )
 {
 	struct slap_csn_entry *csne, *committed_csne = NULL;
@@ -42,12 +43,16 @@ slap_get_commit_csn(
 	if ( maxcsn ) {
 		BER_BVZERO( maxcsn );
 	}
+	if ( foundit ) {
+		*foundit = 0;
+	}
 
 	ldap_pvt_thread_mutex_lock( &be->be_pcl_mutex );
 
 	LDAP_TAILQ_FOREACH( csne, be->be_pending_csn_list, ce_csn_link ) {
 		if ( csne->ce_opid == op->o_opid && csne->ce_connid == op->o_connid ) {
 			csne->ce_state = SLAP_CSN_COMMIT;
+			if ( foundit ) *foundit = 1;
 			break;
 		}
 	}
diff --git a/servers/slapd/proto-slap.h b/servers/slapd/proto-slap.h
index 3999334aa369f14617f77eecbe5471d5c07dccfb..1d08b5488ab10147ab7b1e5e25f91ac630d87df3 100644
--- a/servers/slapd/proto-slap.h
+++ b/servers/slapd/proto-slap.h
@@ -804,7 +804,7 @@ LDAP_SLAPD_V( int ) slap_serverID;
 LDAP_SLAPD_V( const struct berval ) slap_ldapsync_bv;
 LDAP_SLAPD_V( const struct berval ) slap_ldapsync_cn_bv;
 LDAP_SLAPD_F (void) slap_get_commit_csn LDAP_P((
-	Operation *, struct berval *maxcsn ));
+	Operation *, struct berval *maxcsn, int *foundit ));
 LDAP_SLAPD_F (void) slap_rewind_commit_csn LDAP_P(( Operation * ));
 LDAP_SLAPD_F (void) slap_graduate_commit_csn LDAP_P(( Operation * ));
 LDAP_SLAPD_F (Entry *) slap_create_context_csn_entry LDAP_P(( Backend *, struct berval *));