Hello,

I try to understand, how the LDAP-Indexes work.

If I configure a Index for a Attribute like:

index myAttribute eq

the index file myAttribute.bdb is build in the data directory.

When I search then

ldapsearch -x -h localhost -D".." -b"<baseDN>" "(myAttribute=<searched key>)"

how will the LDAP-Server process this request?

Is there anywhere a good documentation?

My assumption is:
* At first, a the Index is looked up. The result are only the matched IDs.
* The LDAP-Server  now can quick give back all entires form id2enty.bdb

If I use Indexes, are all other entires are examined too after give back the result from indexes?


I have a database, and my search is like shown above. The search takes long. The cache is configured, the size is enough
(approx. dn2id.bdb + id2entry.bdb).
But what I see, is that the write IO from LDAP is enormously (seen with iotop). During the whole search, the write IO is higher than the read IO.
Why?

Thanks for help.


Steeg