[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
inequality searches cause slapd to freeze
- To: openldap-software@OpenLDAP.org
- Subject: inequality searches cause slapd to freeze
- From: Jon Roberts <jon@jonanddeb.net>
- Date: Mon, 04 Apr 2005 17:28:30 -0500
- User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040113
FC3, OpenLDAP 2.2.23, BDB 4.2.52
In a previous post, I had discussed problems using filters with => <=
operators.
http://www.openldap.org/lists/openldap-software/200412/msg00166.html
In the response, Howard Chu indicated potential support for inequality
indexing on integer types. I later changed my attributes to integer
syntax, and upgraded to OpenLDAP 2.2.23. Recoding my clients to use
these filters again, I got pretty speedy performance (where loglevel was
0), and so I made a mistaken assumption that the function had in fact
been implemented. The filters now look something like this:
(&(&(gospqualifier>=400624)(gospqualifier<=400634))(objectClass=gosp)(gosptype=verse))
Unfortunately, I have discovered that after running something like a
dozen of these searches without issue, slapd hangs permanently on the
next such request. I cranked up the logs (loglevel -1) to see what was
happening, and soon discovered that each such search leads to a an
iterative comparison of each and every verse entry (3779) to the filter
to determine matches. The logs, you might guess, are voluminous. Since
the performance sans logs is okay, that really doesn't matter to me
right now so much as the slapd crash, which the logs don't explain other
than to stop at a point immediately before the inequality search
commences (as compared to what I see for a succesful inequality search).
I can recreate this same condition on a separate box running RH9,
OpenLDAP 2.2.23, BDB 4.2.52, so it seems systematic. Each inequality
search I perform is preceded by a request for the entry representing the
passage itself, but otherwise the directory is unoccupied.
Any ideas what might be happening here?
Jon Roberts
www.mentata.com