directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alex Karasulu (JIRA)" <>
Subject [jira] Commented: (DIRSERVER-629) Improve performance for search requests
Date Fri, 02 Jun 2006 18:39:31 GMT
    [ ] 

Alex Karasulu commented on DIRSERVER-629:

This is horrible.  Here's what I propose we do:

(1) Branch the 1.0 branch (new branch is optimizaion) and the shared-ldap code.  
(2) Replace all Strings that pump in a DN into the backend interface with your new LdapDN
class which has both the 
      normalized DN and the user provided DN.
(3) Change comparator on ndn index to use a String.equals() for now.  This is the easiest
way to get an immediate
      impact.  The comparator for the updn must still be a normalizing since there is nothing
we can do about it.  However we
      do not use the UPDN for searching based on scope so it will not hurt us.
(4) Rerun perfromance metrics and check the improvement

If these enhancements do not solve this problem we have to re-evaulate the default backend


> Improve performance for search requests
> ---------------------------------------
>          Key: DIRSERVER-629
>          URL:
>      Project: Directory ApacheDS
>         Type: Improvement

>     Versions: 1.0-RC3
>     Reporter: Emmanuel Lecharny
>     Priority: Critical
>      Fix For: 1.0-RC4
>  Attachments: apacheds-SEARCH.log
> Search requests are pathological long when the server is loaded with entries. I have
a server with 10000 entries, and I do a search for a random user. It takes around 50 ms to
find the user (20 searches per second, maximum).
> This is due to the fact that, when we have a lot of entries, the search look for entries
which DN are all parsed (cf attached log). The parser is synchronized and takes around 0,5
ms to parse a DN, and the entries to be parse are 100 (cf attached log again), so the 50 ms
are spent parsing, parsing and parsing ...

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message