[prev in list] [next in list] [prev in thread] [next in thread]
List: openldap-technical
Subject: Re: How indexes used with search
From: Howard Chu <hyc () symas ! com>
Date: 2012-09-26 13:41:37
Message-ID: 50630611.2020502 () symas ! com
[Download RAW message or body]
Emmanuel Lécharny wrote:
> Le 9/26/12 2:01 PM, Howard Chu a écrit :
>> Roman Rybalko wrote:
>>> 25.09.2012 14:57, Roman Rybalko пишет:
>>>> Also it's not clear for me how objectID set is determined when there
>>>> is search on "one" scope? The same when "sub" scope cover not the full
>>>> database contents but a part of the object tree (suffix: cn=test,
>>>> search base: cn=test1,cn=test)? I thought that search with base
>>>> covering not the full backend suffix (but a partial tree) should work
>>>> faster, but seems this is not true, even overhead introduced by
>>>> additional objectID set. Right?
>>> Howard, can you explain it please?
>>
>> The scope is just another set, yes. It must be ANDed with the index
>> sets. Searches with subtree scope over the entire database use a
>> shortcut, instead of reading a scope set we just use a fake set
>> representing all IDs. Searches over any other scope cannot take any
>> shortcut.
>
> As discussed with Howard last month, OneLevel scope can define a set of
> candidate IDs too, as soon as you can extract the children of the base
> entry from the Rdn index. Not sure OpenLDAP support that atm. Howard ?
The actual answer depends on which backend you're using. There's little point
in discussing it when you can just read the source code to get the details.
back-bdb uses explicit scope indices. back-hdb and back-mdb use only an rdn index.
--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic