void
 slap_get_commit_csn(
        Operation *op,
-       struct berval *maxcsn
+       struct berval *maxcsn,
+       int *foundit
 )
 {
        struct slap_csn_entry *csne, *committed_csne = NULL;
        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;
                }
        }
 
 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 *));