[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: BDB-openldap performance





--On Tuesday, May 31, 2005 1:25 PM +0000 Manel Euro <euro_32@hotmail.com> wrote:

Hello,

I am having performance problems on my openldap-2.2.26 and Berkeley
4.3.28.NC.
I have installed this combo on a PIII 1.0Ghz with 512 Mb and an IDE drive.
Every client has nscd configured and running.
Whenever a client does:
cd ~username (and then tab) I get the following error:

Ex: my username is tsoli;when I do cd ~tso(and TAB) it circles the globe
two times :) and gives me tsoli.

Here is the error:
/usr/local/openldap-2.2.26/libexec/slapd -d 4

SRCH "ou=People,dc=ex,dc=com" 2 3    0 30 0
    filter: (&(objectClass=posixAccount)(uid=public))
    attrs: cn uid uidnumber gidnumber gecos description homeDirectory
loginshell
bdb_idl_fetch_key: [01872a84]
bdb_idl_fetch_key: @ou=people,dc=ex,dc=com
bdb_idl_fetch_key: [b49d1940]
bdb_idl_fetch_key: [5941c014]
bdb_idl_fetch_key: [6a7fc8b1]
send_ldap_result: err=0 matched="" text=""



Here is the bdb section in slapd.conf

# Indices to maintain
index   objectClass     eq
index   cn,sn           eq,pres,sub
# Indexes para optimizar o acesso  para as funcoes getpwuid(), getpwnam()
# e getgrgid()
index   uid             eq,sub
index   uidNumber,loginShell    eq
index   gidNumber       eq
index   uniqueMember    pres
index   memberUid       eq,pres,sub

cachesize applies to the number of entries in your database. Do you really have 1,500,000 entries in your DB?


cachesize 1500000

The dbcachesize parameter does not apply to back-bdb if that is the database you are using. It only applies to back-ldbm.


dbcachesize     80000000

DB_CONFIG:
# logfile 100MB, a BDB .
set_lg_max 104857600
# set the in-memory log buffer size
set_lg_bsize 262144
# temporary while we're slapadding the database
set_flags DB_TXN_NOSYNC
# set the cachesize to 0GB + X bytes, split into N pieces of memory.
set_cachesize 0 150000 1

I got 150Kb when performing the calculations recommended in the OpenLdap
FAQ.

I would guess that 150KB is way too small. Try at least a few megabytes.

I will note that it is suggested to use OpenLDAP with BDB 4.2.52+patches, and not with BDB 4.3.x. The problem you are seeing itself seems to be a problem with nscd (why is it searching for uid=public?).

--Quanah


-- Quanah Gibson-Mount Principal Software Developer ITSS/Shared Services Stanford University GnuPG Public Key: http://www.stanford.edu/~quanah/pgp.html