Sync IMAP Servers for convenience/redundancy

Rob Siemborski rjs3 at
Wed Dec 17 09:06:55 EST 2003

On Wed, 17 Dec 2003, Karl Fischer wrote:

> thanks for taking the time to answer my question ...
> Anyhow, I don't really understand your concerns.
> If one would be using the same method an IMAP-Client uses to sync against
> the IMAP-Server (via an IMAP connection, NOT an a file (rsync) level),
> where would you expect the problem?

Lets say you have a replicated setup.

Now let's say that you suffer a network failure, and the machines are
still up, however, they are unable to talk to eachother.  At the same
time, clients can still talk to the machines.


In the event of a failure, where does mail delivery go?  Let's ignore this
problem for the moment and say "no mail delvery during a failure".


Now Client A connects to Server A and appends a message, it gets UID 50.

Client B connects to Server B and also appends a message, it gets UID 50.

When the network comes back -- what message is UID 50?


But lets say you don't want to allow APPENDS during a failure -- this is
quite valid.  But you have a problem even with flags.

Client A conencts to Server A and sets and unsets a seen flag.

Client B connects to Server B and just sets the seen flag.  (For
conveinence, let's say this happens at the same time as Client A unsets
the seen flag).

What is now the status of the seen flag when the network comes back?


Doing a uni-directional sync is much more likely to work, especially if
the slave machine is only a cold spare (that is, clients can not connect
to it unless the master goes down -- at which point the slave becomes the
master and the direction of the sync changes).  Note that this is probably
something you want an admin to decide, as you don't want both machines to
decide they are a master.


Rob Siemborski | Andrew Systems Group * Research Systems Programmer
PGP:0x5CE32FCC | Cyert Hall 207 * rjs3 at * 412.268.7456
Version: 3.12
GCS/IT/CM/PA d- s+: a-- C++++$ ULS++++$ P+++$ L+++(++++) E W+ N o? K-
w O- M-- V-- PS+ PE++ Y+ PGP+ t+@ 5+++ R@ tv-@ b+ DI+++ G e++ h r- y?

More information about the Info-cyrus mailing list