[Spambayes] database corruption

Skip Montanaro skip at pobox.com
Wed Mar 19 22:29:26 EST 2003


    Doc> When everything came back up and seemed stable, I restarted
    Doc> pop3proxy.py and was unable to restart pop3proxy.py because of
    Doc> database corruption. As before, there was no mail activity going on
    Doc> at the time of the crash.

What version of Berkeley DB are you using?  Try this command:

    rpm -qa | egrep '^(lib)?db'

It might report something like

    db1-devel-1.85-6mdk
    libdb3.2-devel-3.2.9-2mdk
    db1-1.85-6mdk
    libdbtcl3.2-3.2.9-2mdk
    db2-2.4.14-3mdk
    libdb3.2-3.2.9-2mdk

Note that I don't have anything like "libdb3.2-utils-3.2.9-2mdk".  If you
don't but have your Mandrake CD around, install that RPM.  That will give
you a bunch of commands which begin with "db_".  Try running db_recover on
your corrupt database file and see if it fixes the problem.

What does ldd say about the version of libdb linked into your bsddb.so file?
Try something like this:

    % ldd /usr/local/lib/python2.2/lib-dynload/bsddb.so 
            libdb-3.2.so => /lib/libdb-3.2.so (0x4001c000)
            libc.so.6 => /lib/libc.so.6 (0x400a3000)
            /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)

You want the -utils RPM which corresponds to the libdb version bsddb.so was
linked against.  On Mandrake systems you can install multiple versions of
libdb simultaneously.

Skip



More information about the Spambayes mailing list