Since upgrading to Debian Wheezy I have been observing large jumps in
the value stored in dovecot-uidlist. The effect of these jumps is to
confuse some mail clients (Thunderbird, Opera Mail) causing them not to
display messages from a (random?) point in time onwards in the affected
folder.
I have been unable to determine the root cause of these jumps.
What I do know:
1. I never observed the problem while running Debian Squeeze.
2. The only way I have found to fix the issue is to remove all the
dovecot* files from the affected folder and restart dovecot. I have
tried removing various subsets of the dovecot* files but haven't yet
found a subset that works.
3. I first tried upgrading from Squeeze to Wheezy within a few weeks of
the Wheezy release. At that point the problem occurred so frequently
that I couldn't sync my mail client with my mail box. Multiple folders
exhibited this problem and while I was fixing them the problem appeared
in other folders. I was unable to reach a point where the system was
stable so I reverted back to Squeeze.
4. Some time later (I think a year but I am not sure) I tried the
upgrade to Wheezy again. This time the system was stable. After a few
days I noticed that the problem was still occurring but less frequently.
Since then I have been fixing the problem as I notice it and
experimenting with various settings (mainly locking related) without
success. I now have a cron job that looks for problematic folders and
fixes them when found.
5. I have updated Dovecot packages to those from Jessie via
wheezy-backports and the problem still occurs.
6. Dovecot is installed along with postfix, amavisd-new, clamav-daemon,
procmail and fetchmail.
7. The mail server is running on a eSATA SheevaPlug that boots of an
external USB drive. All user home dirs (and associated mailboxes) are
located on a LUKS/ext3 encrypted partition.
8. The output of dovecot -n may be found at the end of this mail.
9. Uid values for the three most recent instances of this problem are:
3801596527, 3371927249, 3443181615
10. Some folders seem more susceptible to this problem but I have not
been able to identify any common factors/triggers.
11. The problem occurs - on average - once a day.
I am happy to provide any further information, configure any debug
logging and/or test suggested configuration settings that may help track
down the root cause of this problem.
Any help gratefully appreciated.
Mark
# 2.2.13: /etc/dovecot/dovecot.conf
# OS: Linux 3.2.0-4-kirkwood armv5tel Debian 7.8
mail_debug = yes
mail_location = maildir:~/Maildir
mail_max_userip_connections = 100
namespace {
inbox = yes
location mailbox {
special_use = \Drafts
name = Drafts
}
mailbox {
special_use = \Junk
name = Junk
}
mailbox {
special_use = \Sent
name = Sent
}
mailbox {
special_use = \Sent
name = Sent Messages
}
mailbox {
special_use = \Trash
name = Trash
}
prefix name = inbox
}
passdb {
driver = pam
}
protocols = " imap"
service replication-notify-fifo {
name = aggregator
}
service anvil-auth-penalty {
name = anvil
}
service auth-worker {
name = auth-worker
}
service {
unix_listener {
group = postfix
mode = 0666
user = postfix
path = /var/spool/postfix/private/auth-client
}
name = auth
}
service config {
name = config
}
service dict {
name = dict
}
service login/proxy-notify {
name = director
}
service dns-client {
name = dns_client
}
service doveadm-server {
name = doveadm
}
service {
inet_listener {
port = 0
name = imap
}
inet_listener {
port = 993
ssl = yes
name = imaps
}
process_min_avail = 5
name = imap-login
}
service imap-urlauth {
name = imap-urlauth-login
}
service imap-urlauth-worker {
name = imap-urlauth-worker
}
service token-login/imap-urlauth {
name = imap-urlauth
}
service {
executable = imap postlogin
name = imap
}
service indexer-worker {
name = indexer-worker
}
service indexer {
name = indexer
}
service ipc {
name = ipc
}
service lmtp {
name = lmtp
}
service log-errors {
name = log
}
service pop3 {
name = pop3-login
}
service login/pop3 {
name = pop3
}
service {
executable = script-login -d rawlog
name = postlogin
}
service replicator-doveadm {
name = replicator
}
service login/ssl-params {
name = ssl-params
}
service stats-mail {
name = stats
}
ssl_cert = </etc/ssl/certs/smtpd.crt
ssl_cipher_list = HIGH:MEDIUM:!aNULL:!MD5:!RC4
ssl_key = </etc/ssl/private/smtpd.key
userdb {
driver = passwd
}
protocol imap {
service replication-notify-fifo {
name = aggregator
}
service anvil-auth-penalty {
name = anvil
}
service auth-worker {
name = auth-worker
}
service auth-client {
name = auth
}
service config {
name = config
}
service dict {
name = dict
}
service login/proxy-notify {
name = director
}
service dns-client {
name = dns_client
}
service doveadm-server {
name = doveadm
}
service imap {
name = imap-login
}
service imap-urlauth {
name = imap-urlauth-login
}
service imap-urlauth-worker {
name = imap-urlauth-worker
}
service token-login/imap-urlauth {
name = imap-urlauth
}
service login/imap {
name = imap
}
service indexer-worker {
name = indexer-worker
}
service indexer {
name = indexer
}
service ipc {
name = ipc
}
service lmtp {
name = lmtp
}
service log-errors {
name = log
}
service pop3 {
name = pop3-login
}
service login/pop3 {
name = pop3
}
service replicator-doveadm {
name = replicator
}
service login/ssl-params {
name = ssl-params
}
service stats-mail {
name = stats
}
}