Headache moving from Cyrus 2.1 to 2.2

Dan White dwhite at olp.net
Mon Jan 24 09:47:38 EST 2011


On 24/01/11 15:08 +0100, Raimund Eimann wrote:
>Hi,
>
>I moved deliver.db away temporarily, now I get load of there errors on stating the service:
>
>
>Jan 24 14:58:43 callisto cyrus/lmtpunix[20840]: DBERROR: init() on berkeley
>Jan 24 14:58:43 callisto cyrus/lmtpunix[20840]: DBERROR: opening /var/lib/imap/deliver.db: Invalid argument
>Jan 24 14:58:43 callisto cyrus/lmtpunix[20840]: DBERROR: opening /var/lib/imap/deliver.db: cyrusdb error
>Jan 24 14:58:43 callisto cyrus/lmtpunix[20840]: FATAL: lmtpd: unable to init duplicate delivery database
>Jan 24 14:58:43 callisto cyrus/lmtpunix[20841]: DBERROR: dbenv->open '/var/lib/imap/db' failed: DB_VERSION_MISMATCH: Database environment version mismatch
>Jan 24 14:58:43 callisto cyrus/lmtpunix[20841]: DBERROR: init() on berkeley
>Jan 24 14:58:43 callisto cyrus/lmtpunix[20841]: DBERROR: opening /var/lib/imap/deliver.db: Invalid argument
>Jan 24 14:58:43 callisto cyrus/lmtpunix[20841]: DBERROR: opening /var/lib/imap/deliver.db: cyrusdb error
>Jan 24 14:58:43 callisto cyrus/lmtpunix[20841]: FATAL: lmtpd: unable to init duplicate delivery database
>Jan 24 14:58:43 callisto cyrus/lmtpunix[20842]: DBERROR: dbenv->open '/var/lib/imap/db' failed: DB_VERSION_MISMATCH: Database environment version mismatch
>Jan 24 14:58:43 callisto cyrus/lmtpunix[20842]: DBERROR: init() on berkeley
>Jan 24 14:58:43 callisto cyrus/lmtpunix[20842]: DBERROR: opening /var/lib/imap/deliver.db: Invalid argument
>Jan 24 14:58:43 callisto cyrus/lmtpunix[20842]: DBERROR: opening /var/lib/imap/deliver.db: cyrusdb error
>Jan 24 14:58:43 callisto cyrus/lmtpunix[20842]: FATAL: lmtpd: unable to init duplicate delivery database

Berkeley may also be seeing an old environment in /var/lib/imap/db*

You might be able to move those directories out of the way. However if you
have an important database, like your mailboxes db, in bekeley db format,
then that could be problematic.

I don't recall if Cyrus 2.1 had any check pointing capabilities
(ctl_cyrusdb) or database conversion capabilities (cvt_cyrusdb), but you
would want to checkpoint your databases before moving them over, and
possibly convert them to another format, like skiplist.

Your duplicate delivery database, and your tls_sessions database shouldn't
be that important if you can't move them over.

-- 
Dan White


More information about the Info-cyrus mailing list