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

Re: a few back-bdb tuning questions



> Quoting matthew sporleder <msporleder@gmail.com>:
>
> > I am using openldap 2.3.21 and bdb 4.4.20 (both compiled 64-bit) on
> > solaris 10.
> >
> > I followed (How do I determine the proper BDB/HDB database cache
> > size?) http://www.openldap.org/faq/data/cache/1075.html and saw the
> > note:
> > "I don't have enough free RAM to hold all the 800MB id2entry data, so
> > 4MB is good enough."
> > And I found my number (around 30MB), which got me -great- read
> > performance.
> >
> > (so far I have my sun v120 upto 750+ BINDS/second using slamd and a
> > few thousand test accounts.  Although, when I turned on logging, it
> > went down to 350/second)
>
> This seems rather low.  I'll note that on Solaris it is best to use a shared
> memory cache.  My SunFire 120's get several thousand searches/second.
>

Is this with the entire directory loaded into ram?  (I noticed you had
a pretty big cachesize)

> > Well.. what if you do have enough ram?  Do you just set a huge cache
> > size, and it will eventually grab the whole thing?  Do I need to
> > include my indexes and other things in that memory calculation, or
> > just the id2entry?
>
> Yep.
>

Sorry, can you clarify if this is 'Yep' on just the id2entry, or 'Yep' on *.bdb?

> > The man page mentions that hdb needs a very large idlcachesize
> > relative to the cachesize.  What's the bdb recommendation on this?
> >
> > When I checkpoint and use DB_LOG_AUTOREMOVE, what am I losing?  The
> > old transactions that have already been written to the database on
> > disk?  This would mean that my log.### are all active, correct?  Since
> > the old ones would have been deleted.
> >
> > And can multiple subordinate databases (I didn't find a lot of
> > documentation about subordinate, by the way.  Shouldn't that be in
> > slapd.conf(5)?) share the same set_lg_dir?  Or should they be
> > separated into directories of their own?
>
> Their own directories with their own DB_CONFIG files.
>
> I suggest reading over:
>
> http://www.stanford.edu/services/directory/openldap/configuration/
>

Is the shm_key arbitrary?  And does it need to be different for each
subordinate database?  (I'm assuming yes, since they all have
different DB_CONFIG settings.)

Also, while I'm on the subject, with solaris 10, you can tune shm it
on the fly with 'prctl'.