[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: Confusion with index
At 03:17 AM 6/6/2001, Todd Lyons wrote:
>Configuring Courier/Qmail/OpenLDAP 2.x. It's working, but lookups are
>very slow, consuming 100% CPU for 10 second bursts. With OpenLDAP 1.x
>it was because I didn't have enough attributes indexed. I was only
>indexing uid,cn,sn,mail. Running slapd in debug mode, I saw that it was
>looking for an attribute mailAlternateAddress, so I added it to the list
>of indexed attributes and lookups were instantaneous with very little
>CPU consumption.
>
>But with OpenLDAP 2.0, the format of the indices forces you to tell it
>what exactly you want indexed. Not paying attention, when I populated the
>initial 5000 accounts (testing before implementation), I didn't have
>mailAlternateAddress in the list, so the index file didn't get created.
>I added it in so that it looks like this now:
> index cn,sn,uid,mail,mailAlternateAddress pres,eq
> index objectClass eq
>But when I run slapindex, it doesn't create the indices for
>mailAlternateAddress. Is there some other utility that I'm supposed to
>be using to create an index after the rest of the db has been created
>and indexed? In my case, the mailAlternateAddress attribute has no
>value for any of the 5000 accounts I created. I recall you saying that
>an attribute can't exist with no value, so is this why the index is not
>being created or am I doing something wrong?
No. If the attribute is never used in the directory,
than the index file need not be present for that attribute.
>Kurt, I also noticed in your example in the documentation, the
>following:
> index uid pres,eq
> index cn,sn,uid pres,eq,approx,sub
> index objectClass eq
>I attempt this config and it reports an error "duplicate index uid,
>ignoring". I remove uid from the second line and it reports an error
>with using approx in the same line. I remove approx and it reports
>no errors.
Sounds like a documentation bug to me.
>When it reports an error like this, does it ignore just
>that attribute, just that index, or the entire line? I'm betting
>it's the entire line since it doesn't complain about the second error,
>only the first one it finds.
I don't recall.
>I also need clarification about ACL's and authentication, but that will
>wait until I get the indexing working properly.
Search on "auth" and "userPassword".
>If you have a URL that
>explains it, that would be appreciated as well. I have "Understanding
>and Deploying LDAP Directory Services", but they don't talk about
>equality, presence, approximate, etc (note that I'm guessing at their
>real names and functions).
Indexing is generally implementation specific, I wouldn't expect
a general LDAP book to cover them.
>--
>Blue skies... Todd
>| Get a bigger hammer! | Are you feeling lucky...punk? |
>| http://www.mrball.net | I've had better days... |
>| http://faq.mrball.net | It's the end of the world as we know i|