On Sat, 2011-11-12 at 21:53 +0800, Christopher Chan wrote:
On Saturday, November 12, 2011 01:01 AM, Adam Tauno Williams wrote:
People with bad hardware can break anything; and you're probably talking about old versions anyway [anything with indexes/databases can corrupt].
You should be right on that score...this was circa 2003/2004.
Cyrus is incredibly reliable, stable and fast. And the latest 2.4.x series closes numerous potential issues with how databases are managed.
Oh, so Cyrus is another 'use a database as a mail store'? The other one that I know of but cannot remember the name of uses postgresql for its mailstore.
---- not at all - the mailstore itself is simply flat files - essentially a maildir type but all within specified director[y|ies]
There were a number of db's that traditionally were berkeley db's but now the recommended method, as Adam pointed out is to use skiplist. This is what my /etc/imapd.conf (cyrus configuration) contains for db list at this point...
annotation_db: skiplist duplicate_db: skiplist mboxkey_db: skiplist mboxlist_db: skiplist ptscache_db: skiplist quota_db: quotalegacy seenstate_db: skiplist subscription_db: flat statuscache_db: skiplist tlscache_db: skiplist userdeny_db: flat
Actually though, berkeley db is used by an awful lot of daemons such as OpenLDAP, Netatalk and is reasonably durable and to be honest, I've been using Cyrus w/ berkeley db's since the early 2000's and never had a problem whereas there have been times when I've had to slapd_db_recover berkeley db's from OpenLDAP.
I gather that by comparison, PostgreSQL and MySQL are considered comparatively much slower and never used for these servers.
Craig