Question on the exact nature of the DBs
ken at oceana.com
Tue Jan 20 20:57:27 EST 2004
Nick Fisher wrote:
> Hello all...
> In my quest to sort out the DB errors (see the 'What happened to my db/
> ?' thread) I've been having a bit of trouble figuring out exactally what
> all the DBs are. I was hoping that someone who could look at what I've
> got so far and give me a headsup on any errors and answer a few
> (hopefully) quick questions.....
> 1) duplicates
> Configured with: --with-duplicate-db=DB
> Location: /var/imap/deliver.db
> Description: Specifies which database backend to use for the duplicate
> delivery database.
> 2) mboxlist
> Configured with: --with-mboxlist-db=DB
> Location: /var/imap/mailbox.db
> Description: Specifies which database backend to use for the mailbox list.
> (More here:
> 3) tls db
> Configured with: --with-tls-db=DB
> Location: /var/imap/tls_sessions.db
> Description: Specifies which database backend to use for the TLS cache.
> 4) seen db
> Configured with: --with-seen-db=DB
> Location: /var/imap/user/u/user-name.seen
> Description: Specifies which database backend to use for the seen state.
> 5) subscriptions db
> Configured with: --with-subs-db=DB
> Location: /var/imap/user/u/user-name.sub
> Description: Specifies which database backend to use for the subscriptions
The above is correct. Note that in 2.2.3, the databases backends are
now configured at runtime via imapd.conf options.
> Now there are two lots of data that do not appear to be covered in the
> above list, db/ and the mailbox/cyrus.(header|index|cache|seen).
> What is db/? I can't figure out what exactally it does or what you use to
> configure it at compile time. I guess it's part of mailboxs.db in some way
> but I would love a better answer....
db/ is the Berkeley DB environment directory. This is where the
transaction logs reside. See the BDB docs for more details.
> The mailbox/cyrus.* files are fairly well explained here:
> But I can't figure out what there format is or how it's configured..... is
> it native to cyrus?
You don't need to worry about these, the are internal to Cyrus and
unconfigurable. If you're just curious, the formats are explained in
doc/internal/mailbox-format.html in the distro.
> Why is the reconstruct command in the doc
> marked as 'NOTE: CURRENTLY UNAVAILABLE'? What versions does that apply to?
Anything recent. At least 2.1+, and possibly 2.0+.
> And my final question is about the seen dbs. Each user has their own seen
> db and a cyrus.seen in every mailbox. Are the cyrus.seen files just a
> backup to reconstruct the /var/imap/user/u/user-name.seen?
The cyrus.seen files are a legacy format. Each time the user opens a
mailbox, the cyrus.seen entries will be added to their user.seen file.
If this server has been running for any length of time (meaning your
users have had enough time to view the various mailboxes), then the
cyrus.seen files can be deleted.
Kenneth Murchison Oceana Matrix Ltd.
Software Engineer 21 Princeton Place
716-662-8973 x26 Orchard Park, NY 14127
--PGP Public Key-- http://www.oceana.com/~ken/ksm.pgp
More information about the Info-cyrus