Our clients ask us to open IMAP (previously mostly POP and Webmail access) for their customers.<br>The impact is significant on I/O, specifically when IMAP clients poll to ask for new messages.<br><br>Most of their customers use Outlook Express (Windows XP) or the new Windows Mail (Vista and Seven).<br>
The impact of Outlook Express on I/O could be reduced thanks to IMAP IDLE.<br><br>OE has a known bug regarding its support of IDLE (see: <a href="http://www.washington.edu/imap/IMAP-FAQs/index.html#7.37">http://www.washington.edu/imap/IMAP-FAQs/index.html#7.37</a> or the post here : <a href="http://asg.andrew.cmu.edu/archive/message.php?mailbox=archive.info-cyrus&amp;searchterm=outlook%20idle&amp;msg=31911">http://asg.andrew.cmu.edu/archive/message.php?mailbox=archive.info-cyrus&amp;searchterm=outlook%20idle&amp;msg=31911</a>).<br>
I am very surprised that Cyrus Imapd doesn&#39;t provide any workaround for this issue. It is not an issue for anybody ?<br><br>I have studied the workaround that is done in dovecot (<a href="http://wiki.dovecot.org/Clients">http://wiki.dovecot.org/Clients</a>) :<br>
 - in the first release it implements the behaviour described in the UW IMAP&#39;s FAQ<br> - since the version 1.1 it is a simple heartbeat that maintains the IMAP connexion.<br><br>The second solution seems to be less impactant regarding IMAP clients. But doesn&#39;t resolve the lost of connexion after a server restart.<br>
I have ported the Dovecot&#39;s workaround in Cyrus 2.4.6. The workaround is done on the backend side and on the proxy side when IDLE is disabled on the backend.<br><br><br><br>Sébastien<br>