diff --git a/servers/slapd/back-bdb/filterindex.c b/servers/slapd/back-bdb/filterindex.c index 31fd91b342ea411c1a79f4330ea8d69f748e2f8b..49900c881d5e5ed0fc9cc30be59a434b073df8ca 100644 --- a/servers/slapd/back-bdb/filterindex.c +++ b/servers/slapd/back-bdb/filterindex.c @@ -720,10 +720,14 @@ equality_candidates( if ( ava->aa_desc == slap_schema.si_ad_entryDN ) { EntryInfo *ei = NULL; rc = bdb_cache_find_ndn( op, rtxn, &ava->aa_value, &ei ); - if ( rc == LDAP_SUCCESS ) - bdb_idl_insert( ids, ei->bei_id ); - if ( ei ) + if ( rc == LDAP_SUCCESS ) { + /* exactly one ID can match */ + ids[0] = 1; + ids[1] = ei->bei_id; + } + if ( ei ) { bdb_cache_entryinfo_unlock( ei ); + } return rc; }