directory-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel Lécharny <elecha...@gmail.com>
Subject Re: [ApacheDS] groupofnames search is slow
Date Thu, 05 Feb 2015 04:16:11 GMT
Le 04/02/15 12:53, John Peter a écrit :
> Hi,
>
> I'm using apacheds 2.0.0 M_19
>
> ApacheDS has 11 group entries and some of them have 26 000 member
> attributes.
>
> I'm using a qucik search via apache directory studio:
> (&(member=uid=john,uid=1.2.246.1.1.1111.10.0,ou=users,dc=test,dc=fi)(objectClass=groupOfNames))
> Using a stopwatch I can see a 5 second delay before the result is visible.
>
> Some other queries perform instantaneously.
> Below is a snipet from the apacheDS log. It shows the search operation took
> only 7070312ns or 7ms. After that apacheDS does something and the next log
> entry is 5 seconds later.
>
> Any idea's what is happening?

First of all, is the 'member' attribute indexed ? If not, please do so,
restart your server, and restart.

Regarding the way ApacheDS works :

o the search request will use the index which has the lowest number of
candidates. In this case, I suppose it's the ObjctClass index that
matches (it should match 5 candidates). That is obviously fast.

o then, it has to check every of those 5 candidates to see if it macthes
the full filter, where teh 'member' attribute is given. This is where it
takes time, as we use a sub-index to store such attribute when there are
more than a number of elements (and with 26 000 'member' value, you bet
this is the case). If the 'member' attribute is not indexed, we will do
a full scan of this sub-index, which will take a lot of time, thus the 5
seconds you get.

I can assume that indexing 'member' would speed-up the test. If it's not
the case, then there is a bug we need to get fixed (and this should not
be a huge thing to do)

Can you try the indexing approach, and if it does not make the server
retrieving the results fast enough, then fill a JIRA ?

Many thanks !



Mime
View raw message