[Spambayes] The database question that would not die

richie at entrian.com richie@entrian.com
Mon Dec 2 16:12:30 2002


[Paul]
> See dead horse, flog. Repeat as required :-) Sorry.

Tell me about it.  This is proving really difficult.  Am I the only one
who thinks that having two incompatible database formats sucks?  Especially
when they're each the default for different pieces of the same software,
so you can't use those pieces together without reconfiguring things.

> 1. Yes, Windows, with Python 2.2.
> 2. Yes. [reasons snipped]

I know, and I believe I've already dealt with Windows.  Please see
http://mail.python.org/pipermail/spambayes/2002-December/002385.html

> I do not believe that bsddb (neither the standard library one, nor
> bsddb3) offers any way to check the version of the underlying Sleepycat
> code.

OK, fine.  I agree with whoever said that we document the fact that we
require 2 or better, provide a link to pybsddb for Windows, and let users
of other platforms worry about it themselves - other platforms have
allegedly had Berkeley DB 2 or better for ages, which brings me back to
the dead horse question: are there platforms other than Windows where
using anydbm instead of pickle will cause problems?  Windows we've dealt
with, Unix has a recent Berkeley DB, the Mac has gdbm (thanks François!),
are there any others?  (Are there even any other platforms that we need
to consider?)  If not, let's ditch pickles before we get publicity from
the Linux Journal articles and the Spam conference.

[Brad]
> Has the classifier interface to "storage" been abstracted yet? I thought
> that's where things were headed. But I haven't had a chance to cvs update
> lately.  Can I "drop-in" my own "database instance"

Yes, all that has been done.  The main project has a pickle interface and
a DBM interface, and I'm proposing we ditch the pickle interface because it
no longer has any advantages.  Adding another interface should be easy.

-- 
Richie Hindle
richie@entrian.com





More information about the Spambayes mailing list