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:
ErrorsThe 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.:.
Attachment:
p7sbOFka7LPb8.p7s
Description: S/MIME cryptographic signature
---- Cyrus Home Page: http://www.cyrusimap.org/ List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/