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

RE: bdb bad performance again (really need help)



-----Original Message-----
> From: owner-openldap-software@OpenLDAP.org
> [mailto:owner-openldap-software@OpenLDAP.org]On Behalf Of Vadim Tarassov

> Hi Matt,
>
> Thanx a lot for repyling. We increased cache size up to the value enough
> to keep all data in memory. This resulted in much better performance.
> However I still have odd feeling about it as I don't really understand
> why performance descreased so much (several orders of magnitude) when
> cache size was small. This is due to my miserable knowledge of berkeley
> db. And why preformance decreased in irreversable manner? Why even
> restart of LDAP server does not bring performance to proper value? Do
> you know what exactly happens to bdb backend when cache size is too
> small? You see, I feel unconfortable if someone tells me "put contents
> of your backend in memory and everything will be fine", because
>
> 1) I don't understand why should I do it ... Look there must be an error
> somewhere, if performance degradates so much suddenly and does not
> recover . Why db_recover "recovers" performance?

There are several bugs in BDB 4.1 related to the memory manager hanging when
the cache is too small. These bugs are fixed in BDB 4.2 (which has not yet
been publically released, as far as I know). For now the only way to avoid it
is to make sure your cache is "big enough." You must read the Sleepycat BDB
documentation to learn what "big enough" is.

If you don't read the documentation, you lose. There are no shortcuts to
understanding.

  -- Howard Chu
  Chief Architect, Symas Corp.       Director, Highland Sun
  http://www.symas.com               http://highlandsun.com/hyc
  Symas: Premier OpenSource Development and Support