e-mail sync options?

Dan Jenkins dan at rastech.com
Mon Aug 30 22:29:46 EDT 2010


  On 8/30/2010 2:08 PM, Bruce Dawson wrote:
>   On 08/30/2010 11:14 AM, Joshua Judson Rosen wrote:
>> I could just write a suite of code to implement this myself,
>> but maybe someone can save me the effort by pointing me to a canned
>> solution :)
> A many-to-many sync is extremely resource intensive. And the optimizations
> for doing it with fewer resources are mathematically difficult. I'd like to
> test it if you think you've come up with code to do it! (I've done this
> in the
> past with sync'ing databases, and gave up on all but the one-to-many
> scenario.)
>
> I'm not satisfied there are any (commercial or otherwise) products that
> do the generalized many-to-many sync correctly. (Including tracking
> deleted and attribute records.)
>> It really seems like IMAP is the only thing available that's
>> at all like a `portable, ubiquitous mail-handling API'..., so
>> maybe what I want is to just use OfflineIMAP in IMAP-to-IMAP mode?
>> If so, what sync-*topology* should I be using? Do I have to
>> use a star topology, where everything syncs with each other
>> through a central node? Or can should the IMAP UUID support
>> be sufficient for me to do an N-way distributed sync with
>> data flowing every which way?
> I would recommend using a "master" node that all the satellites sync to.
> I believe
> an N-Way distributed sync will eventually end up in a mess that you
> won't be able
> to unravel (other than just declaring one the winner and dup'ing that to
> all the other
> potential "master" nodes). I say this given the unreliability of network
> connections,
> software releases, humans, and the world in general (e.g. practical
> experience).
I've used imapsync with a "master" node method for something like this. 
It worked well. We did not do any expunges while using it though, so I 
don't know how well that would work. As it maintained deleted flags, I 
would think it would be fine. I did not use offlineimap, because it was 
a server-to-server project in my case.



More information about the gnhlug-discuss mailing list