Coda File System

Re: coda in production environment

From: Clemens Hermann <>
Date: Wed, 4 Apr 2001 08:03:07 +0200
Hi Jan,

thanks for your detailled answer, you helped me a lot!

> Are you writing your own mailsystem?

no ;-). I want to replicate an office mailproxy with the internet
mailserver. Problem: Users should be aple to pick up the mail in the office
via pop3 (office mailserver) and from home via webmail/pop3 (internet
mailserver). So if the mail is downloaded from ether location it should be
deleted on the other one. Furthermore one could implement kind of an imap
mirror that can be updated from ether location.
The big problem is: I do not have permenent internet-connection in the
office but dialin from time to time.

> All systems that I know of are
> doing a lot more than just creating/deleting. Status flags (read/replied)
> tend to be stored inside the file, except for maildir, where the file is
> renamed.

jepp, I use qmail/maildir. Here the file is put into a different directory.

> Maybe, the Coda server and one client would be located at machine A,
> while machine B would only run a client. Coda might give some nasty
> surprises, since it uses very strict consitency checking when machine B
> is reintegrating, f.i. when the file is deleted at both sides it is
> considered a 'conflict',

whooops. Should not happen often in my setup (users are either at home or in
the office), but it might.

> > - is coda ready for this situation?`
> Don't know, I expect that your application will be doing more
> interesting things than just creating and deleting (f.i. renaming across
> directories when it is maildir format,

I thought putting a file in a different location is like deleting it here
and creating a new one there, am I wrong?

> > - Is there a better way to solve the problem?
> Maybe an imap/pop + fetchmail solution.

no, because I do not just have to replicate the mails but also the
user-database. The users are only maintained on one end (the server). The
bigger problem is:
how can I automatically delete a mail on one end if it is deleted on the

> Or unison might work, although
> that one could get confused by biff like mailcheckers that play around
> with the file ctime/mtime/atime. Rsync probably wouldn't work in this
> case, as it wouldn't be able to distinguish between a file that was
> deleted on machine B and a file that was newly created on machine A.

this would be no problem, because each new file gets a unique name. But I
thought rsync needs some sort of master. I had a look at it but I did not
find a way to replicate "in both ways".

>    unison:

looks great, might perfectly suit the needs.

I will keep an eye on coda anyway because it is amazing what can be done
with it (I had some steps through the docs).

Thanks a lot for the great hints

Received on 2001-04-04 02:06:32