Cyrus IMAP and MySQL mailboxes (Building load-balancing
cluster)
Chaskiel M Grundman
cg2v at andrew.cmu.edu
Mon Nov 27 14:10:32 EST 2006
--On Friday, November 24, 2006 08:08:05 AM +0100 Simon Matter
<simon.matter at invoca.ch> wrote:
> What is really different between
> using berkeley or skiplist DB for the cluster? I'm also running without
> BDB but I want to understand how berkeley databases are different to
> skiplist databases in a cluster situation.
Berkeley DB does interprocess coordination by using mmaping files. One of
the things it can put in the mmaped files are locks (either custom
test-and-set spinlocks or pthread mutexes). It is not possible for these
locks to work correctly across NFS (or even GFS), since changes do not
appear instantaneously on all clients/nodes.
skiplists are much simpler data structures, as they are only appended to.
as long as file locks and O_APPEND work correctly, skiplists should work
correctly
More information about the Info-cyrus
mailing list