[Date Prev][Date Next] [Chronological] [Thread] [Top]

slapi_internal_search limits bug (ITS#3183)



Full_Name: Martin Evans
Version: 2.2.12
OS: Linux
URL: ftp://ftp.openldap.org/incoming/slapi_search_limits-2.2.12.patch
Submission from: (NULL) (138.37.7.247)


I have a slapi pre-add operation plugin that calls the following slapi internal
search function:

    pb=slapi_search_internal( basedn,
                              LDAP_SCOPE_ONELEVEL, 
                              filter,
                              NULL, NULL, 0 );

The problem is that it rarely returns all the entries that it should.

I had a quick looking bdb_do_search() and seems that the loop is exiting early
because it is hitting an ldap search timelimit. The following patch disables the
size and time limits in slapi_search_internal:

--- 0/servers/slapd/slapi/slapi_ops.c   2004-06-08 09:45:10.000000000 +0100
+++ 1/servers/slapd/slapi/slapi_ops.c   2004-06-09 12:11:35.991166897 +0100
@@ -1218,8 +1218,8 @@
  
        op->oq_search.rs_scope = scope;
        op->oq_search.rs_deref = 0;
-       op->oq_search.rs_slimit = LDAP_NO_LIMIT;
-       op->oq_search.rs_tlimit = LDAP_NO_LIMIT;
+       op->oq_search.rs_slimit = -1;
+       op->oq_search.rs_tlimit = -1;
        op->oq_search.rs_attrsonly = attrsonly;
        op->oq_search.rs_attrs = an;
        op->oq_search.rs_filter = filter;

(Also uploaded to ftp://ftp.openldap.org/incoming/)