partial conversion to BDB 4.2.52?

Igor Brezac igor at
Mon Dec 15 14:27:58 EST 2003

On Mon, 15 Dec 2003, Andreas wrote:

> I just recompiled cyrus-imapd-2.1.16 and cyrus-sasl-2.1.15 with BDB 4.2
> support and it seems to be working. Email is working, delivery, mail clients
> ok, etc.
> There is a small odd thing, though. /var/lib/imap/db seems to still be at
> BDB 4.1, while the rest is at 4.2 (/var/lib/imap/mailboxes.db, for example):
> pandora [/var/lib/imap] > db4.2_archive -al
> /var/lib/imap/log.0000000001
> pandora [/var/lib/imap/db] > db4.2_archive -al
> db_archive: Program version 4.2 doesn't match environment version
> db_archive: Ignoring log file: log.0000000001: unreadable log version 7
> /var/lib/imap/db/log.0000000001
> /var/lib/imap/db/log.0000000002
> db_archive from BDB 4.1 works in /var/lib/imap/db:
> pandora [/var/lib/imap/db] > db4.1_archive -al
> /var/lib/imap/db/log.0000000001
> pandora [/var/lib/imap/db] > db4.1_archive -as
> /var/lib/imap/deliver.db
> /var/lib/imap/mailboxes.db
> And does not work in /var/lib/imap:
> pandora [/var/lib/imap] > db4.1_archive -al
> db_archive: Ignoring log file: log.0000000001: unsupported log version 8
> db_archive: Invalid log file: log.0000000001: Invalid argument
> db_archive: PANIC: Invalid argument
> db_archive: PANIC: DB_RUNRECOVERY: Fatal error, run database recovery
> db_archive: open: DB_RUNRECOVERY: Fatal error, run database recovery
> I know the transaction log file format has changed, so db_archive from 4.1
> shouldn't work, that's ok. What bothers me is that the database environment
> in /var/lib/imap/db is still at BDB 4.1. Even after archiving all the log files
> and shutting the server down (so that /var/lib/imap/db is empty), when I start
> it up again it's again at BDB 4.1. Any hints? Should it work, am I doing something
> wrong? I already ran db_recover (from 4.1 and 4.2, didn't seem to help).

You needed to run db_recover-4.1 from /var/lib/imap/db/ before you
started the newly compiled cyrus-imapd.  Otherwise, dump mailbox list file
(ctl_mboxlist -d), delete other berkeley dbs (deliver, tls_sessions and
annotations).  Then re-create mboxlist (ctl_mboxlist -u) and restart the

I ran db_recover-4.1 before the upgrade and had no problems.  Double check
for other dependencies of db-4.1 that possibly made it to
cyrus-imapd|sasl (like heimdal if you use it).


More information about the Info-cyrus mailing list