Gmail – How are POP3 UIDL’s assigned to email messages in Gmail

gmailpop3

I am wondering what will happen if I do the following:

  1. Enable POP3 in Gmail for all messages.
  2. Download the messages to a POP3 client (e.g. Outlook or another Gmail account).
  3. Disable POP3 in Gmail.
  4. Make modifications to email messages (e.g. delete the first one, delete some other ones).
  5. Enable POP3 in Gmail for all messages (again).
  6. Download the messages to the same POP3 client from step 2.

Will I get duplicated messages in my POP3 client?

It's my understanding that a POP3 server assigns unique UIDL's to each email message so that if your mail client is configured to leave copies on the server, it will not redownload the same messages. I'm wondering how Gmail handles assigning these UIDL's to messages. I believe there are only 3 possibilities:

  1. Every time you enable POP3, Gmail will assign POP3 UIDL's to each message in sequential order starting at something like 1.
  2. Every time you get a message in your inbox, a new POP3 UIDL is assigned to it, regardless if POP3 is enabled or not. It does not matter what modifications you make to the message or any other message, the POP3 UIDL for the message will remain the same. Even if you enable/disable POP3.
  3. Gmail keeps a track of the last POP3 UIDL used. When you enable POP3 it will go to the next POP3 UIDL that was never used and start assigning UIDL's to your messages. (E.g. you had 100 email messages in POP3 assigned UIDL's in the range 1-100. The last ID was 100, so when you re-enable POP3, it will retag those messages with the UIDL's 101-200 so that it doesn't reuse the same ones that have already been assigned.)

I'm hoping that it uses #2, as that is the most robust method. If, after following the steps above, there are no duplicates, I believe that this is evidence that it does indeed use method #2.

Best Answer

I just tried it and it uses method #2. Each email that arrives is assigned a unique UIDL which never changes.

So, no, you won't get duplicated messages as long as your email client checks the UIDL's.