Automatic database coversion script anyone?

Ondřej Surý ondrej at
Tue Apr 19 03:33:17 EDT 2011

On Mon, Apr 18, 2011 at 12:50, Jeroen van Meeuwen (Kolab Systems)
<vanmeeuwen at> wrote:
> Bron Gondwana wrote:
>> I really, really wanted to have BDB able to handle in-place upgrades
>> as well, but I haven't been able to figure out a way. There is an
>> ->upgrade method on databases, but it says it's destructive and can
>> fail
> If I understood it correctly, I think it actually says that the process may
> not be interrupted in any way, or the database is damaged in a way that
> cannot be repaired?


> That's something else then destructive by definition ;-)

Well, it could be destructive.

> I suppose it's easy enough to copy the database to a backup, upgrade the
> live but if it fails (e.g. the "upgraded" version is corrupted), try again
> with the backup copy?

You have to make sure you're the only user of the database in the
moment of the upgrade. I am not so versed in cyrus-imapd code to be
able to say that it can be guaranteed in the cyrus-imapd/pop3d/...,
but if we can modify cvt_cyrusdb as a first step, it would be huge
leap forward :).

Ondřej Surý <ondrej at>

More information about the Cyrus-devel mailing list