Wiki, information on database back ends.
Patrick Goetz
pgoetz at mail.utexas.edu
Tue Sep 14 15:24:17 EDT 2010
On 09/14/2010 12:26 PM, Dave McMurtrie wrote:
>
> The Cyrus wiki's content has been mostly moved to
> http://www.cyrusimap.org/ except for what I considered to be useless or
> outdated content.
>
Hmmm, the take away message is the wiki is rather light on useful,
timely content. <:)
There's been some discussion on the Debian cyrus list about how to
automate upgrades from cyrus 2.n.k to cyrus 2.m.j. Jeroen van Meeuwen
(on both lists) suggested that the cyrus RPM package features a utility
called cyrus-imapd.cvt_cyrusdb_all which might be useful for this.
I've been looking at this script, and it mostly appears to be using
cvt_cyrusdb to convert particular db files to Cyrus skiplists and then
back again to the original db backend format. I can't follow the script
completely as it seems to rely on DB configuration details found in the
imapd.conf file I don't have in my Debian 2.1.16 imap server, and it's
also not clear how the script is run.
This raises a number of questions, though:
1.
Cyrus skiplists? I thought all the DB files were in Berkeley DB format.
I tried to find some documentation on skiplists, but only found an old
message to the developer list from Bron Gondwana discussing skiplist
bugs (http://markmail.org/message/zbaq765brbg2acfj).
On the other hand, this guy talks about converting all Berkeley DB files
to skiplists because of perceived libdb bugs:
http://www.mail-archive.com/info-cyrus@lists.andrew.cmu.edu/msg31953.html
Skiplists: what are they, when and why use them? Either I'm a bad
googler or documentation seems to be lacking.
2.
The Redhat cvt_cyrusdb_all script seems to assume a specific set of
database files. Is the set of cyrus imap DB files fixed, and if so what
are they? Is there any documentation on what each database file
contains? This would be very useful to people trying to convert older
cyrus IMAP installations to new ones.
3.
The dicussion of DB backends leads one to wonder if this means Berkeley
DB or skiplists, or if other backends are used, too? Is there any
documentation on this?
More information about the Cyrus-devel
mailing list