OT - Scalable email server solution needed

Jan Grant jan.grant at bristol.ac.uk
Sun Apr 9 17:14:32 UTC 2006

On Sun, 9 Apr 2006, Bill Moran wrote:

> I have only a small amount of experience with Cyrus.  However:
> http://cyrusimap.web.cmu.edu/twiki/bin/view/Cyrus/Backup
> Based on that document, it appears as if you're dodging the bullet with
> backups.  My interpretation is that Cyrus keeps mailboxes in some sort
> of db file.  If a db file is being modified while you're backing it up,
> the backed up version will be inconsistent, thus the entire mailbox
> unusable.

Not quite. Cyrus maps the imap hierarchy onto directories, with one 
(written once only) file per message. As flat-file as you can get. On 
top of this are per-folder index files (which can be recreated using 
reconstruct) holding stuff like preformatted IMAP responses, header 
indexes etc. That's where cyrus gets its speed from.

Additionally there's a per-server "mailboxes" DB holding folder 
information (including ACLs), per-user seen/subscription databases and a 
deliverdb for duplicate suppression.

The latter can all be stored in multiple formats, including bdb; hot 
backups for these work much the same way as for anything other bdb.

It's not perfect, but there's minimal bullet-dodging.


jan grant, ISYS, University of Bristol. http://www.bris.ac.uk/
Tel +44 (0)117 3317661   http://ioctl.org/jan/
ioctl(2): probably the coolest Unix system call in the world

More information about the freebsd-questions mailing list