nss_ldap / top startup

Gavin Atkinson gavin.atkinson at ury.york.ac.uk
Wed Apr 27 11:14:18 PDT 2005

On Mon, 2005-04-25 at 12:59 +0200, Oliver Brandmueller wrote:
> Hi,
> I have some servers running running on 5.4-STABLE as of Apr 5th. I use 
> nss_ldap for a userbase of currently about 24000 accounts (will be 
> growing to approx 60000 in the next weeks). I don't use pam_ldap 
> currently, because users only need to login by IMAP, POP, SMTP and FTP, 
> for all of these services daemons are used which natively auth against 
> the LDAP server.
> The more accounts there are in the LDAP directory, the longer the 
> startup of "top" takes. With the current userbase top takes about 3-4 
> seconds to start (on a mostly idle Dual Xeon 2.8GHz with fast disks and 
> local slapd).

FWIW, I don't think this is related to LDAP as such.  I have a machine
bound to NIS with ~19000 entries in the passwd file.  Top takes ages to
start up.

The problem is in machine.c - it iterates over every user in the passwd
file to figure out what how many characters longest username may be.
It's nasty and to be honest I think it can/should just be removed.

Try the attached patch just to prove that this is the cause in your case

A while back, there was talk of a FreeBSD libc name cache daemon, but I
can't seem to find any reference to it now (I seem to remember the
website was within .ru, if it helps anyone find it) - though I'm not
sure it would help in this context or even if it's really the correct
way to mask the bug.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: top-machine.diff
Type: text/x-patch
Size: 641 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20050427/183a46f4/top-machine.bin

More information about the freebsd-stable mailing list