BMF says cannot open database & build sig doesn't match environment after maverick upgrade
Bug #641600 reported by
Bill Wheatley
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
bmf (Ubuntu) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: bmf
bill@bill-
Build signature doesn't match environment
bmf: cannot open database
bill@bill-
ii bmf 0.9.4-4 an e-mail filter for spam that learns
bill@bill-
Description: Ubuntu maverick (development branch)
Release: 10.10
Changed in bmf (Ubuntu): | |
status: | New → Invalid |
To post a comment you must log in.
I do not know whether this should be considered as a bug. As far as I understand, Berkeley databases contain information about user's environment. After its creation, a database can only be read in a similar environment. Environment information includes OS type (32- or 64-bit OS), libdb version, and a few other things. For example, if you create your database on a 32-bit Ubuntu, I am not sure you will be able to read it on a 64-bit Ubuntu. On maverick Ubuntu, bmf uses libdb4.8 to manage its Berkeley databases. I would not be surprised if it was libdb4.7 or another version on previous Ubuntu distributions. I cannot check it because I do not have another Ubuntu distribution at hand.
The solution is to erase all __db.* files from ~/.bmf directory and to run bmf after that:
rm ~/.bmf/__db.*
bmf -t < any_text_file
That should solve the problem. Of course, back up your .bmf directory before erasing anything just in case something goes wrong. It worked on my account.