[389-users] Optimising queries
Richard Megginson
rmeggins at redhat.com
Wed Mar 24 13:56:33 UTC 2010
----- jim at scusting.com wrote:
> Hi, I have some queries which are showing in the logs as not being
> indexed (notes=U right?).
Right. You can also get notes=U if you are hitting the idlscanlist limit (which you are probably not doing).
> In the example below the accountid is
> indexed
> but the authrole is not, but I would of expected the query to use the
>
> accountid index?
The "&" operator in this case does not work like a short circuit AND operator in most programming languages. 389 ds may consult both indexes in an attempt to optimize the query.
>
> conn=308 op=1 SRCH base="o=blah.com" scope=2
> filter="(&(accountid=abc123)(authrole=PowerUser))" attrs=ALL
> conn=308 op=1 RESULT err=0 tag=101 nentries=1 etime=0 notes=U
>
> Do I need to index the authrole attribute as well in order for the
> indexes to be used on a query like this?
Yes.
> If I need to add indexes for
>
> anything that maybe in included in an & LDAP query, and indexes for
> anything that may require sorting on (my previous post) then I'll end
> up
> with indexes for just about everything!
Perhaps.
>
> Can anyone recommend any good sites & tools for explaining LDAP
> queries
> and indexing? I did some searching but not found anything usefull
> which
> explains why the above would not be indexed. I have previously used
> MySQL and I'm sure the above equivalent which just use the accountid
> index and not worry about the authrole not being indexed.
In the LDAP world this is highly server dependent, so there is not really a sort of generic LDAP server index methodology, as there might be in the SQL world.
I suggest starting here - http://www.redhat.com/docs/manuals/dir-server/8.1/admin/Managing_Indexes.html and here - http://www.redhat.com/docs/manuals/dir-server/8.1/admin/Tuning_DS_Performance.html
>
> Thanks.
>
> Jim.
> --
> 389 users mailing list
> 389-users at lists.fedoraproject.org
> https://admin.fedoraproject.org/mailman/listinfo/389-users
More information about the 389-users
mailing list