[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
RE: strange performance problem
On Sun, 23 Mar 2003, Howard Chu wrote:
> > -----Original Message-----
> > From: owner-openldap-software@OpenLDAP.org
> > [mailto:owner-openldap-software@OpenLDAP.org]On Behalf Of Cuong bui
>
> > during the first 4 testruns the openldapserver used 98% cpu processing
> time.
> > (seen in top) After the initial 4 runs, slapd only consumes 40%-75% cpu
> > processing time. somethimes it's even dropping to a few %.
>
> This implies that the balance of time shifted from in-memory operation to
> disk I/O. Why do you suppose that might be? Perhaps you have run out of cache
> memory? Perhaps you have run out of disk space? Perhaps you should run
> db_stat and see?
I was guessing on a lock problem. Because there's no disk activity and the
cpu isn't working hard either. I think i have enough memory left. (top
shows more then 400MB free). I've also have enough disc space (about 4GB
free). I've dug into some config files, there are cache paramters for ldbm
but these don't work for bdb ?
i've just ran db_Stat , i don't know how to read the result correctly but,
i think i'm seeing a lock problem.
output of db_stat -C A
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Lock region parameters
locker table size: 1031, object table size: 1031, obj_off: 360112,
osynch_off: 0, locker_off: 351856, lsynch_off: 0, need_dd: 0
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Conflict matrix
0 0 0 0 0 0 0 0 0
0 0 1 0 1 0 1 0 1
0 1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 0
0 1 1 0 0 0 0 1 1
0 0 1 0 0 0 0 0 1
0 1 1 0 0 0 0 1 1
0 0 1 0 1 0 1 0 0
0 1 1 0 1 1 1 0 1
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Locks grouped by lockers
Locker Mode Count Status ----------- Object ----------
ec dd= 0 locks held 1 write locks 0
ec READ 1 HELD id2entry.bdb handle 0
ed dd= 0 locks held 0 write locks 0
ee dd= 0 locks held 1 write locks 0
ee READ 1 HELD dn2id.bdb handle 0
ef dd= 0 locks held 0 write locks 0
f0 dd= 0 locks held 0 write locks 0
f1 dd= 0 locks held 0 write locks 0
f2 dd= 0 locks held 0 write locks 0
f3 dd= 0 locks held 0 write locks 0
f4 dd= 0 locks held 0 write locks 0
f5 dd= 0 locks held 2 write locks 0
f5 READ 1 HELD objectClass.bdb handle 2
f5 READ 1 HELD objectClass.bdb handle 0
f8 dd= 0 locks held 0 write locks 0
f9 dd= 0 locks held 0 write locks 0
fa dd= 0 locks held 2 write locks 0
fa READ 1 HELD orderNumber.bdb handle 2
fa READ 1 HELD orderNumber.bdb handle 0
fd dd= 0 locks held 0 write locks 0
fe dd= 0 locks held 0 write locks 0
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Locks grouped by object
Locker Mode Count Status ----------- Object ----------
ec READ 1 HELD id2entry.bdb handle 0
ee READ 1 HELD dn2id.bdb handle 0
f5 READ 1 HELD objectClass.bdb handle 2
f5 READ 1 HELD objectClass.bdb handle 0
fa READ 1 HELD orderNumber.bdb handle 0
fa READ 1 HELD orderNumber.bdb handle 2
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Memory free list
0x40261004: 111844
>
> The BDB documentation that SleepyCat provides is also required reading.
Yes i've downloaded these ;)