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

Re: Bdb defaults - WAS: problem importing entries.



Armbrust, Daniel C. wrote:

This (and many other recent threads) leads me to ask the question,
why doesn't openldap provide more reasonable defaults for bdb, if no
DB_CONFIG file is present?

See the FAQ-o-Matic article already posted in another response to this thread...


Telling beginners to openldap that in order to use our software, you
need to go out and read (and more importantly understand) all the
nuisances of BDB is overwhelming, and I think unnecessary. Openldap
should start up with reasonable values for average use cases, if no
other config info is provided.

Telling people "you must read the documentation for the software you're using before you can use it" doesn't seem too unreasonable to me. Maybe reading the documentation is a novel concept to some people, but catering to such a weakness only encourages ignorance.


Going out and learning all of the details of Berkeley is something
that should be reserved for those that want to tweak openldap for
maximum performance in their environment - it shouldn't be required
for basic use.

What is an "average" or "basic" use case? Freshly built, OpenLDAP will certainly start up and run without any particular tuning. If it runs slowly for you, I guess you need to tweak it. Gee, need some indexes, need this, need that, etc. etc... You can't truly take advantage of the package without doing some reading.


It seems like every time someone posts a suggestion here for a bdb
setting, an expert tells them that it is a bad idea.  And that they
need to go read the manual.

Most frequently someone posts a suggestion without explaining all of the ramifications of that suggestion, and *that* is a bad idea. And if you don't know what the consequences are, then you *do* need to go read the manual.


Why don't the experts just set some defaults (instead of relying on
Berkeley's defaults) and then post a couple of different examples of
tweaking options - one for very large datasets, one for bulk loads,
etc.

What is "large" ? 500MB? 2GB? 30TB? What's "large" to one may be "average" to someone else; trying to encapsulate that in the base code is pointless. You the sysadmin are the only person who knows what you're going to do with the thing, how much data, what kind of load...


We rely on the defaults because they're generally *SAFE* - e.g., full transaction support with write-ahead logging, to minimize the possibility of data loss. Tweaking various settings may improve performance but if it comes with a greater risk of data loss, then it's NOT something we will do invisibly, under the covers. We want YOU to consciously choose to take that risk, fully cognizant of the tradeoffs you're making. If you don't know enough about the software to know how to tweak the setting, then you don't know enough to make the choice.
--
-- Howard Chu
Chief Architect, Symas Corp. Director, Highland Sun
http://www.symas.com http://highlandsun.com/hyc
Symas: Premier OpenSource Development and Support