Two major items that can affect POP3 performance are CD-MIME conversion and the POP3 LIST command.
If mails are store in the user's mailfile as Notes Rich Text (NRT or CD), these messages will need to be converted to MIME format before they can be downloaded to the client. It is important that all POP3 users should have their mail format preference for incoming mail set to MIME in their person document. If any users currently have NRT messages in their mailfile, changing the person document to MIME format will not convert these old messages. Only new mails arriving will be converted.
POP3 LIST command
If your users have set their POP3 client to keep mail on the server, you may see the following symptoms when POP3 is enabled:
- POP3 clients need a long time to download mail
- CPU spikes on the server
- Low performance of all Domino tasks
- 100% disk utilisation and high disk I/O throughput
- Especially high volume write operations.
The high disk I/O is caused by a LIST command sent by the POP3 client. When Domino handles the LIST command, it will export the unread messages to disk as temporary files to get the size of the mail. So if POP3 users keep messages on the server, each time they access the server and issue a LIST command, Domino will generate many tmp files and cause high volume of disk I/O. By default, messages in a mail file on a Domino server are not marked as READ when they are accessed by a POP3 client and left on the server. However, the POP3MarkRead parameter can cause popped messages to be marked as READ, depending upon the value of the parameter:
- 0 results in no change to the READ or UNREAD status of a message accessed by a POP3 client from a Domino POP3 server. This is the default value
- 1 marks a message as READ when a POP3 client accesses a message on the Domino POP3 server, such as by using the LIST or RETR commands.
- 2 marks a message as READ after the POP3 client uses the RETR or TOP command to retrieve a message and before the Domino POP3 server responds to the command.
- 3 marks a message as READ after the Domino POP3 server processes the POP3 client's RETR or TOP command.
- If POP3MarkRead is set to 1, 2, or 3, and POP3TOPNoMarkRead=1 is present in the Domino server's notes.ini file, messages are not marked as READ when the TOP command is used.
If you decide to enable the POP3MarkRead=3 parameter, all new emails will be marked as read after they are retrieved by POP3 clients. However, for the existing emails that have already been retrieved, POP3 client will not send RETR command to these messages again, so these messages will be always unread and appear in LIST command result. A workaround for this is to enable POP3MarkRead=1 until all users have logged in one time, which will cause the list command to mark all mails as read. The parameter can then be set to 3.
Also, since Domino 8.5.1FP2, you can enable POP3_SPOOF_SIZE=1, which will prevent POP3 server from exporting messages to disk for the LIST command. When this parameter is enabled, Domino will return a "fake" number to the client for the size of each message.