how to update BDB

Igor Brezac igor at ipass.net
Fri Jan 21 16:55:13 EST 2005



On Fri, 21 Jan 2005, Jukka Salmi wrote:

> Hello,
>
> first of all thanks for the replies.
>
> Igor Brezac wrote:
>> Reset the bdb environment with the old db_recover binary prior to upgrade.
>> I do not think that the database format changed between the two BDB
>> versions.
>
> No, it did not. But the log file format changed.
>
> I tried this without success:
>
> $ db4_recover.old -v -h /var/imap/db
> db_recover: Finding last valid log LSN: file: 1 offset 1462435
> db_recover: Recovery starting from [1][1462347]
> db_recover: Recovery complete at Fri Jan 21 22:29:58 2005
> db_recover: Maximum transaction ID 80000090 Recovery checkpoint [1][1462435]
>
> ...but ctl_cyrusdb still complained:
>

This worked for me.  Try to start master from the /var/imap directory.  I 
have to this on Solaris in order for bdb to work properly.

-Igor

> master[5394]: about to exec /usr/pkg/cyrus/bin/ctl_cyrusdb
> ctl_cyrusdb[5394]: DBERROR p*^F^H: db4
> ctl_cyrusdb[5394]: DBERROR: critical database situation
>
>
> Andreas Hasenack wrote:
>> You would have to get rid of the transaction log files. Probably by
>> checkpointing.
>> According to the BDB docs, the log file format has changed.
>
> $ db4_checkpoint.old -1 -v -h /var/imap/db
> db_checkpoint: checkpoint: Fri Jan 21 22:37:42 2005
>
> ...same results as above.
>
>
> Sebastian Hagedorn wrote:
>> db_dump and db_restore, perhaps also db_upgrade.
>
> $ db4_dump.old deliver.db >deliver.db.txt
> $ db4_dump.old tls_sessions.db >tls_sessions.db.txt
> $ db4_load.new tls_sessions.db <tls_sessions.db.txt
> $ db4_load.new deliver.db <deliver.db.txt
>
> ...same results again.
>
>
> (Of course I restored /var/imap before every try...)
>
> What am I missing?
>
>
> TIA, Jukka
>
>

-- 
Igor
---
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html




More information about the Info-cyrus mailing list