[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
RE: openldap versions and silent exit
- To: James Courtney <Jcourtney@inphonic.com>
- Subject: RE: openldap versions and silent exit
- From: Quanah Gibson-Mount <quanah@stanford.edu>
- Date: Tue, 10 Aug 2004 18:43:42 -0700
- Cc: openldap-software@OpenLDAP.org
- Content-disposition: inline
- In-reply-to: <6991EE283F61E04A957B5368C576557725010A@camail02.ipcfcdom.inphonic.com>
- References: <6991EE283F61E04A957B5368C576557725010A@camail02.ipcfcdom.inphon ic.com>
--On Tuesday, August 10, 2004 9:00 PM -0400 James Courtney
<Jcourtney@inphonic.com> wrote:
Hey Quanah,
DB_CONFIG:
# Set cachesize to 32MB
set_cachesize 0 33554432 0
slapd.conf:
cachesize 100000 (~20k entries actually in the DB)
idlcachesize? I don't have this anywhere
Backend is BDB 4.2.52.
Hi,
Please don't email me directly, or at least CC the list. :)
Your DB_CONFIG might be too small. There are a number of ways to check.
I suggest running "db_stat -m" in your DB directory and look for things
like a high number of locks granted after waiting
Here's output from my test master:
ldap-test0:/db# db_stat -m
2GB Total cache size.
1 Number of caches.
2GB Pool individual cache size.
0 Requested pages mapped into the process' address space.
119M Requested pages found in the cache (100%).
16 Requested pages not found in the cache.
112213 Pages created in the cache.
16 Pages read into the cache.
313145 Pages written from the cache to the backing file.
0 Clean pages forced from the cache.
0 Dirty pages forced from the cache.
0 Dirty pages written by trickle-sync thread.
112229 Current total page count.
112229 Current clean page count.
0 Current dirty page count.
262147 Number of hash buckets used for page location.
119M Total number of times hash chains searched for a page.
2 The longest hash chain searched for a page.
134M Total number of hash buckets examined for page location.
605M The number of hash bucket locks granted without waiting.
418773 The number of hash bucket locks granted after waiting.
29 The maximum number of times any hash bucket lock was waited for.
380048 The number of region locks granted without waiting.
109 The number of region locks granted after waiting.
112269 The number of page allocations.
0 The number of hash buckets examined during allocations
0 The max number of hash buckets examined for an allocation
0 The number of pages examined during allocations
0 The max number of pages examined for an allocation
As you can see, the number of region locks after waiting (109) is quite low
compared to the number granted without waiting (380,000)
Also, the number of hash bucket locks granted after waiting (418,000) is
quite low compared to the number granted without waiting (605 Million)
There is no need to set cachesize higher than your total number of entries.
The backend you are using is determined in slapd.conf in the "database XXX"
parameter. That backend, if it is ldbm or bdb, is then overlayed on top of
BDB 4.2.52.
Also, if that is all there is to your DB_CONFIG file, you may also want to
set some other parameters like:
set_lg_regionmax 262144
set_lg_bsize 2097152
set_lg_dir <YOUR LOG DIRECTORY>
Note that storing the BDB logs on a separate disk or spindle dramatically
increases the performance of OpenLDAP.
idlcachesize might be a 2.2 only option, I'm not sure, I abandoned 2.1 a
while ago.
--Quanah
--
Quanah Gibson-Mount
Principal Software Developer
ITSS/Shared Services
Stanford University
GnuPG Public Key: http://www.stanford.edu/~quanah/pgp.html