Migrate all to skiplist?

Bron Gondwana brong at fastmail.fm
Wed Mar 12 20:03:48 EDT 2008


On Wed, Mar 12, 2008 at 12:02:30PM -0400, Shelley Waltz wrote:
> 
> I am migrating my 200 users from a RHAS3 cyrus-imapd-2.2.3 install to a
> RHAS5 cyrus-imapd-2.3.7 install.
> 
> I have been happy with the current setup with the exception of issues with
> the Berkeley DB for mailboxes and deliver.  Recovering a corrupt
> maiboxes.db has been extememly slow, taking on the order of 6hrs to
> recover from the flat file dump.  On occasion I have had to delete the
> deliver.db and restart.
> 
> Reading through many posts, is there any reason to not use skiplist for
> all the databases?  Although I have 200 users, at any given time, only
> half are actively using their account.  Our traffic is light for the most
> part.
> 
> The 2.3.7 defaults as listed in "man impad.conf" seem to indicate
> that berkeley-nosync is used for duplicate and tlscache and berkeley for
> ptscache(?)  Flatfile for subscription and quotalegacy for quota.
> 
> This will be a single server with a single replica.  Are there any issues
> with not using skiplist for all under this setup?

I wouldn't use skiplists in 2.3.7 on general principles.  The code was
chock full of bugs for ages (ask the Kolab guys about their experience
with it).  Almost all the fixes got into 2.3.11, though I would also
recommend applying:

http://cyrus.brong.fastmail.fm/patches/cyrus-skiplist-safelock-2.3.11.diff

http://cyrus.brong.fastmail.fm/patches/cyrus-skiplist-state-2.3.11.diff

and

http://cyrus.brong.fastmail.fm/patches/cyrus-skiplist-transactions-2.3.10.diff

on top of 2.3.11.  With these, I have been unable to crash skiplists
with all my nasty tests any more.

Bron ( somewhat an expert on that module of the Cyrus code now - I've
       spent a lot of time reading it! )



More information about the Info-cyrus mailing list