Howard Chu writes:
Probably most useful if you have several "identical" servers on different OSes, with a common slapd.conf from CVS or whatever. But even then one needs two almost-identical configurations: for the master and for slaves. Unless they are all (multi-)masters.
Yes, that's precisely the type of scenario that worries me the most. Which is one argument for keeping the default hardcoded to 4K instead of letting BDB decide.
If that's worrisome it sounds like filename parameter = "*" would be useful, so one at least gets the same size for all files. And so one can configure "I want <fixed vs filesystem> blocksize" in one sweep.
That eliminates any ambiguity, and means that you can safely tune them all identically, because the underlying assumptions would be the same.
Whether that's a bug or a feature depends on your goals. One reason to use several OSes is redundancy. Some bugs/problems only show up on some OSes, compilers, or whatever.
In any case, one such assumption would differ: "database block size == filesystem blocksize". Which may not matter for the back-bdb code, but it matters for database administration and maybe the Berkeley DB code.