DB_VERSION_MISMATCH -- a solution

Matthias Andree matthias.andree at gmx.de
Mon Jan 17 09:53:55 CET 2005


David Relson <relson at osagesoftware.com> writes:

> You didn't read the script or the explanation.

No script was attached, so I went after the explanation.

Running db_recover on ~/.bogofilter directories is plain wrong, because
it does not the least bit of locking, so other processes can stomp over
the recovery process, create invalid environments and all that, corrupt
the database and all that.

We have bogoutil --db-recover and --db-recover-harder options for a
reason, and that reason is named "lock out other processes while we are
recovering".

If users expect they'll have a hard time remembering these steps, they
ought to look at sqlite3 and see if they can trade in some speed (versus
Berkeley DB) for the convenience of not having to remember these steps
of running bogoutil --db-remove-environment BEFORE upgrading their
software.

-- 
Matthias Andree



More information about the Bogofilter mailing list