how_to:vpop3_re-downloading_old_messages_from_isp_pop3_server

VPOP3 re-downloading old messages from the ISP POP3 server

If you tell VPOP3's POP3 mail collector to leave messages on the ISP's server for a few days, you may find that sometimes VPOP3 will redownload all the messages from the ISP mailbox again.

VPOP3 (like other email clients) keeps track of which messages it has previously downloaded, by remembering their 'Unique IDs' (UIDs). This problem usually happens if VPOP3's remembered UIDs do not match the ISP's UIDs.

ISP renumbering UIDs

The POP3 standard mandates that the messages' unique IDs should never be changed. However, some ISPs will re-assign UIDs to the stored messages. Good ISPs will limit this to when there is an otherwise unrecoverable error in the mailbox store on their server, and will treat it as a major problem, issuing warnings of the consequences (i.e. duplicated messages) to their customers. However, many ISPs will do this without warning their customers, and a few seem to do is as a 'preventative' measure, monthly, or even daily.

If the ISP does this regularly, then you should contact them and ask them to stop doing it…

With recent versions of VPOP3 you can tell if this has happened by looking at the 'Received' headers of the message. The line which the VPOP3 POP3 collector adds shows the UID in the header line (UIDL=….), and you can compare the downloaded copies of a particular message. If the UIDs are different for the same message, then the ISP has re-assigned the messages' UIDs, so VPOP3 sees all the messages as ones it has not seen before

SRVRUIDL.DAT file being deleted

If the SRVRUIDL.DAT (or SRVUIDLx.DAT) file gets deleted from the VPOP3 directory, this will make VPOP3 forget which messages have been previously downloaded, as that is where VPOP3 stores that information (up to VPOP3 version 4).

This problem will not happen in VPOP3 version 5 or later as this information is now stored in the main database.

SRVRUIDL.DAT in use by another program

If the SRVRUIDL.DAT (or SRVUIDLx.DAT) file is in use by another program (eg a virus scanner or backup program) at the time when VPOP3 wants to use it, then VPOP3 will not be able to open the file, so will download the messages again (up to VPOP3 version 4 only). If this happens, then the VPOP3 administrator will receive a message about the file not being accessible.

This problem will not happen in VPOP3 version 5 or later as this information is now stored in the main database.

There is no easy way to find which other program has the file open, because Windows does not report this information to VPOP3 - all it says is that the file is in use by another program, so VPOP3 cannot access it.

Things to try are:

  • make sure that two copies of VPOP3.EXE are not running
  • make sure that a backup program is not copying the file(s)
  • make sure that a virus scanner is not scanning the file(s)
  • make sure that someone hasn't decided to open up the files in a text editor/etc
  • you can try using a program such as Handle to see what the other program is - but this only works if the file is held open by the other program for a long time. If it is just opened for a few seconds, then you will have to be very lucky to catch it when it has the file open
how_to/vpop3_re-downloading_old_messages_from_isp_pop3_server.txt · Last modified: 2018/11/14 10:45 by 127.0.0.1