Quoting matthew sporleder <[EMAIL PROTECTED]>: > > Quoting matthew sporleder <[EMAIL PROTECTED]>: > > > > > 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)
Yeah, on Solaris (SPARC) I had to load everything into RAM to get good performance. Linux didn't have this issue. > > > 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? Yep, in that I just set a huge cache size. For daily operations, sizeof (id2entry.bdb) + 10% is usually sufficient. For loading the database (slapadd), sizeof (*.bdb) gives the best load times. I just set my DB cachesize to be that of sizeof (*.bdb) so I don't have to fiddle with it after completing the load. > > > 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.) Yes, the number assigned to shm_key is arbitrary. I've not used it with subordinate databases, but I too believe that would be yes. ;) > Also, while I'm on the subject, with solaris 10, you can tune shm it > on the fly with 'prctl'. Neat. :) We have no plans to support Solaris 10 or migrate anything to it (We are dumping Solaris and moving wholesale to Linux), so I doubt I'll ever get much chance to play with that. ;) --Quanah -- Quanah Gibson-Mount Principal Software Developer ITS/Shared Application Services Stanford University GnuPG Public Key: http://www.stanford.edu/~quanah/pgp.html
