competition

Simon Matter simon.matter at invoca.ch
Tue Sep 28 09:13:00 EDT 2010


> On Mon, Sep 27, 2010 at 09:38:08AM -0400, Jeff Eaton wrote:
>>
>> > Better to just use an internal DB codebase (like skiplists) that has
>> > nothing to do with Sleepycat.  But then someone has to write and
>> maintain
>> > this code.
>> >
>> > I think the best compromise I've heard yet is to use something like
>> > skiplists by default and make the use of libdb an optional feature
>> like the
>> > use of mysql.
>>
>> I'd be in favor of "deprecating" the use of BerkeleyDB in Cyrus.  Making
>> at least the default for new installations to be all-skiplist would be a
>> good step in that direction, as well as encouraging people to move away
>> from BDB where possible.
>
> Just committed this change to dev/2.4.0-alpha1.  Along with the code
> that automagically converts databases on ctl_cyrusdb -r, this should
> make most sites that are running the default layout transparently
> start running all-skiplist without even realising.
>
>> Ideally, I'd suggest making the default behavior of "./configure; make;
>> make install" to _not_ link in BDB at all unless --with-bdb is
>> explicitly
>> given.  As I recall, you have to jump through a few hoops to get a build
>> of Cyrus to not link in the BDB libraries, even if you're not using
>> them.
>
> I haven't tried this.  Maybe I should.

Oh yes please, would be great being able to build completely without BDB.
Even better if it would be possible to still build cvt_cyrusdb with BDB
support so one can convert things. Or, if database backends could be
compiled as loadable plugins, just imagine :)

Simon



More information about the Info-cyrus mailing list