Dovecot IMAP索引被黑莓设备locking

在我的一些Sendmail + Dovecot邮件部署中,我倾向于使用通过IMAP连接的Blackberry设备来看这个奇怪的问题。 对于这些设备的用户,Dovecot索引往往被locking。 这可以防止邮件stream向黑莓设备以及用户的Outlook客户端。 / var / log / maillog中的相应消息如下所示:

May 2 08:13 XXX imap(asmith): Timeout while waiting for release of exclusive fcntl() lock for index file /home/asmith/mail/.imap/INBOX/.imap.index

这是重复的每个邮箱同步尝试…

这是一个奇怪的错误,并通过删除有问题的索引文件很容易解决。 但是,我很好奇错误和locking状态的根本原因,如果有什么我可以在configuration端修改,以防止它。

在其他情况下,我只有一些BB设备来处理。 在这种情况下,增加了80个新的黑莓,这个locking对系统负载和性能有影响。

mbox存储格式将整个文件夹保存在一个单一的无索引文件中,即使对于读取访问,Dovecot也需要使用复杂的locking 。 这会导致多个客户端出现问题,特别是当他们尝试保持选定的文件夹以等待大多数现代IMAP客户端使用的IDLE通知时。

(此外,Dovecot还增加了.imap.index文件,以避免一些性能问题,并且如果外部递送代理更新文件夹,通常会出现不同步现象。)

考虑切换到Maildir格式 ,其中没有locking这样的问题。 Dovecot有说明 ( 对于v1.x )。