Re: competition

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



--On 22. September 2010 16:10:15 +1000 Bron Gondwana <brong@xxxxxxxxxxx> wrote:

Now - BDB database SHOULD be upgradable.  I want to find a BDB expert
to help me with that - (a) detecting that an upgrade is necessary, and
(b) doing the upgrade.

I wouldn't exactly call myself an expert, but I think I understand the basics of BDB operation. The biggest problem is that there may be multiple version of the BDB utilities installed. So you need to know which BDB version Cyrus was linked against and somehow figure out what the corresponding tools are on the box you're on. The tool are named db_stat, db_verify, db_upgrade etc., but it's not unusual to have db41_stat, db42_stat etc . The "file" utility is pretty useful, because it tells you the version of a BDB file. Unfortunately that version has nothing to to with the version number of the BDB libraries themselves. Instead they look like this:

Berkeley DB (Hash, version 8, native byte-order)

I suppose one could do this:
- at startup, create a new BDB hash file using a Cyrus binary
- check its version number using "file"
- compare that to the existing BDB files
- if they're different you need to perform an upgrade

The upgrade itself *should* be doable using db_upgrade (using the version that goes with the libraries Cyrus is linked against), although I think there are cases where you have to use db_dump followed by db_load. The problem with the latter is that you need the dump from the *old* version of the libraries!

.... given the issues with BDB.  Is it worth embedding a copy of
BDB into the Cyrus distribution rather than using the OS one?  I
know it's generally considered bad taste, but it sure makes
keeping in sync easier!

That would certainly help with the issues I described above, but only if you either also include the utilities or have your own binaries that fulfill their function.
--
    .:.Sebastian Hagedorn - RZKR-R1 (GebÃude 52), Zimmer 18.:.
                .:.Regionales Rechenzentrum (RRZK).:.
.:.UniversitÃt zu KÃln / Cologne University - â +49-221-478-5587.:.

Attachment: p7sXHgkRqLsMD.p7s
Description: S/MIME cryptographic signature

----
Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/

[Index of Archives]     [Cyrus SASL]     [Squirrel Mail]     [Asterisk PBX]     [Video For Linux]     [Photo]     [Yosemite News]     [gtk]     [KDE]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux