On Sat, Oct 27, 2012 at 11:05 PM, David Abrahams <[email protected]> wrote:
>
> I just set up my Gnus to put a copy of every message I send into my
> local "All Mail" box.  GMail already puts a copy in my remote "All Mail"
> box.  Then I ran mbsync, and didn't see the message twice in my local
> "All Mail."  Did I get lucky, or does mbsync have a way to avoid
> generating duplicates of a message when it appears, via other means, in
> both local and remote mailboxes?  Is this in fact just one more
> testament to mbsync's total awesomeness?


    I've did a similar "experiment" and my guess is: GMail detects
duplicate emails and stores them only once; `mbsync` is oblivious of
this issue.


    Now about my experiment: I have a very old archive of my emails
(from other accounts than GMail) that I wanted to "import" into GMail,
but I wasn't sure if some of those emails weren't already in GMail
(because at some point I've used some forwarding schemes). Thus I've
done the following:
    * created a new label in GMail, and exported it through IMAP;
    * made `mbsync` "push only" to that label;
    * copied the file from the "all-mail" maildir (and changed it's name);
    * ran `mbsync` to push the email;
    How did I verify:
    * searched through GMail search interface to see if that mail was
duplicated (it had a "unique" subject);
    * made `mbsync` pull the "all-mail" maildir and checked if the
file got duplicated;

    The result: it didn't got duplicated neither in my maildir, nor in GMail.

    What didn't I try, that could possibly duplicate it:
    * alter the headers related to routing;
    * alter the `Message-Id` header;
    * alter the subject and body;

    I'd verify those because I don't know how GMail detects
duplicates. It might:
    * use a hash of the entire email (envelope with headers + body);
(thus any change in any of the above would make it double the email);
    * maybe it uses only `Message-Id` header to detect duplicates;
(thus any change in any of the above would make GMail just pick one
version;) but I doubt it is this;
    * use a combination of headers, body, etc. to detect duplicates;
(for example it could ignore the routing headers;)

    Hope this helps,
    Ciprian.

------------------------------------------------------------------------------
WINDOWS 8 is here. 
Millions of people.  Your app in 30 days.
Visit The Windows 8 Center at Sourceforge for all your go to resources.
http://windows8center.sourceforge.net/
join-generation-app-and-make-money-coding-fast/
_______________________________________________
isync-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/isync-devel

Reply via email to