Thank you to both responders.

Did I read something that said that the digit after "bayes db version" indicated the version of Berkeley DB that's installed on the system? Like 0 means 1.x... Google shows various messages like "bayes db version 2 is not able to be used, aborting!" which would seem to indicate that 0 is not indicative of the problem I saw.

Perhaps the reason that the bug report lists 0 is that Berkeley DB version 1.x does not include an integrated locking mechanism, but higher versions are reputed to have such a mechanism.

Before I got your responses, I got my courage up and went on to run

$ sa-learn --no-sync --ham ham (ham is the name of a directory in the current working directory)
$ sa-learn --sync

and everything went well. This sort of indicates that the DB isn't hopelessly corrupt.

Please, where is this DB that I should back up?

I wrote a GP Berkeley DB rebuilding program that reads all of the key/ value pairs in a DB, and writes all of those for which the key and value are defined and of non-zero length, to a new DB. I could try running that and see if the new DB is significantly smaller than the old, which for my DBs indicates that it's time to use the new DB.

Theo, do you know if SA uses any entries with null keys or values, that are needed for proper operation? It would be easy to keep entries with null values; I wrote the program to discard them because my DBs don't use such entries.

Thanks,
Craig MacKenna


On Jan 17, 2008, at 1:50 PM, Theo Van Dinter wrote:

On Thu, Jan 17, 2008 at 03:28:06PM -0600, Steven Stern wrote:
bayes db version 0 " indicates your bayes file is corrupt. It should be
"version 3".  Do you have a backup?  SQL or .db?

It doesn't necessarily mean there's corruption,
in fact, since the learning continued and seemed
to finish ok, it's unlikely to be corruption.  See
http://issues.apache.org/SpamAssassin/show_bug.cgi?id=3563 for a possible
libdb issue which causes it.

--
Randomly Selected Tagline:
"And the No. 1 response that you'll need to memorize if you plan to bet
 your business on Windows 2000: 'You want fries with that?'"
                                 - Nicholas Petreley

Reply via email to