competition
Jeffrey T Eaton
jeaton at cmu.edu
Wed Sep 22 08:19:20 EDT 2010
On Sep 22, 2010, at 7:57 AM, Sebastian Hagedorn wrote:
> --On 22. September 2010 07:47:26 -0400 Jeffrey T Eaton <jeaton at cmu.edu> wrote:
>
>> All of that said, I believe that, in general, you can safely upgrade BDB.
>> If you have a Cyrus installation using BDB X, you can drop in a new Cyrus
>> using BDB Y, as long as everything is shut down in between. You can't go
>> back without effort, but upgrades should work.
>
> I'm pretty sure that's not true. *If* an application uses BDB's environment features (not all do!), you *cannot* simply upgrade, unless the application is programmed to perform the upgrade automatically. Otherwise you have to either use db_upgrade to convert the environment to the current version, or you use db_dump and db_load. There's a db_upgrade() call in the library that could be used, but it might not work in all cases:
>
> Errors
> The DB->upgrade() method may fail and return one of the following non-zero errors:
>
> DB_OLD_VERSION - The database cannot be upgraded by this version of the Berkeley DB software.
> --
> .:.Sebastian Hagedorn - RZKR-R1 (Gebäude 52), Zimmer 18.:.
> .:.Regionales Rechenzentrum (RRZK).:.
> .:.Universität zu Köln / Cologne University - ✆ +49-221-478-5587.:.
Hmm. I thought that I had updated BDB in the past. I probably just nuked the databases between updates, since we only used them for transient data (tls_sessions.db, deliver.db, ptscache,db).
The rest of my point stands; changing the BDB version is a problem in and of itself, not changing the Cyrus version. I know of no reason why one couldn't update a Cyrus 2.2 installation to 2.3.
-jeaton
More information about the Info-cyrus
mailing list