stateless synchronization

Ploc pub2011 at
Thu Nov 3 23:54:28 GMT 2011

Le 02/11/2011 10:09, Sebastian Spaeth a écrit :
> On Wed, 26 Oct 2011 17:18:34 +0200, Ploc<ploc2011 at>  wrote:
>> But let's go back to offlineimap, what happens if the cached data of
>> offlineimap are deleted ? Can the synchronization be recovered ? In this
>> case, how can offlineimap determine if a mail has been deleted from an
>> account, or newly received from the other account ? Cached timestamps
>> are helpless whitout cached data or cached metadata ?
> If the cached data is deleted, there are 2 possibilities:
> 1) You are doing IMAP<->Maildir. In this case, it will restore the
> cache, transferring any unknown messages to the other side. That means
> it will opt for the safe option rather than assuming you deleted
> anything. In case you modified flags (e.g. unread), it will IMHO restore
> the server state, rather than the local one (if I remember correctly).
> 2) You are doing IMAP<->IMAP. In this case the mapping between the
> Remote Mail UID and the "Local" Mail UID is lost, and OLI has currently
> know way to match identical mails, so it will transfer mails from both
> sides as unknown to the other side, leading to a duplicated set of mails
> on both sides.
> I would like to have an option to match mails by Message-ID and file
> size, but that's going to take a while.

The main philosophy of OfflineIMAP is then to choose the safer wayin 
order to prevent unwanted mail deletion. Each mail is transferred to the 
other repository.

But what happens if one of the repository uses the new parameter 
"readonly = True" ? Is there a special way of rebuilding cached data ? 
As one of the repository is readonly, every mail deleted from this 
repository should also be deleted from the other repository. Does 
OfflineIMAP work like that ?

More information about the OfflineIMAP-project mailing list