Complete.Org: Mailing Lists: Archives: offlineimap: October 2003:
Re: offlineimap imap<->imap reliability?
Home

Re: offlineimap imap<->imap reliability?

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: offlineimap@xxxxxxxxxxxx
Subject: Re: offlineimap imap<->imap reliability?
From: James Leifer <James.Leifer@xxxxxxxx>
Date: Wed, 22 Oct 2003 10:37:00 +0200
Reply-to: James Leifer <James.Leifer@xxxxxxxx>

Hi John,

Thanks for those answers.  I must say, it looks like a impressive
piece of engineering.

A few more questions... (snipping liberally from your reply).

> record the state of each folder as of the last sync.  These are used to
> determine what changed locally (new messages, deleted messages, flag
> changes, etc).  There is one file per message and that file may be updated
> zero or more times per sync.

If the IMAP server has, say, 100K messages, does that mean offlineimap
will open 100K local files to check what's changed or can it get the
list of changed messages from the server?  Ditto for the uidvalidity
and uidmapping files?  In general terms, how does the performance
scale with respect to:

* the number of changed messages (new, deleted, flags modified) on
  each IMAP server?

* the total number of messages on each IMAP server?

Incidently, do you use a fs like reiser that handles lots of small
files well?

> Yes.  OfflineIMAP handles a move as a delete and an add, and incidentally
...
> Since a move is a delete and an add, it will basically take precedence over
> everything else.  The other end will end up looking like the end that moved,
> with the flags set however they were set on the message in the new folder.

Got it.  Is the move optimized or is the message from the new folder
recopied over the network?  If it's optimized, how does offlineimap
know that it already has the message locally?  Does it store md5s of
all messages or rely on messageids to be unique?

>> So if flag foo is added on the local side and removed on the remote
>> then in the newly synced state foo is present on both?
>
> Well, this is not really a logical situation. 

Yes, you're right.  My question is nonsense since of course we're
interested in started from an already synchronized state --- in which
case it's not possible to add and subtract the *same* flag (it was
either there or it wasn't).  Sorry for the confusion.

Let me try to make more sense despite my cold...  Suppose we're
starting from an *unsynchronized* state, i.e. before the first run of
offlineimap when it has no statefiles around. Suppose some messages
present on one end are not present on the other or some flags are
different for some of the same messages.  How does offlineimap make
the two consistent initially?  Does it propogate changes
unidirectionally?  Does it warn but not actually make any changes?

Warm regards,
-James


[Prev in Thread] Current Thread [Next in Thread]