[Dovecot] old messages being delivered to blackberry

Luc Belliveau luc at bigdata.nb.ca
Tue Apr 10 16:45:13 EEST 2012


Several users are reporting old messages (sometime years old) are being 
delivered as new on their blackberry devices... I've confirmed that this 
happens to all blackberry users... I believe the problem is related to 
this error:

Maildir: Expunged message reappeared, giving a new UID

In fact, this is the only mail related error message on the server... 
the mail is stored on a glusterfs share, and I'm using director to 
prevent simultaneous access... although I wasn't able to get LMTP to 
work with Director...   to simplify things, I've temporarily only 
enabled 1 dovecot server anyway, to get everything else working first... 
I'll fiddle with lmtp later... so right now only 1 server is accessing 
the mailboxes.  Delivery is also done from that one server, from postfix.

Possibly caused by GlusterFS, the indexes were still getting corrupted, 
even with only 1 server... so I've moved the indexes to a local 
directory on each server.  I'm no longer getting index related errors... 
but the expunged error is still occuring... and the error seems to 
happen a few moments before the BB gets a bunch of messages... so it's 
very likely related.

I would like to continue using GlusterFS if possible; I haven't found 
any indication that it is outright unsupported, as long as I'm using 
Director...

I am using dovecot 2.0.16.

Any help would be appreciated!

Here is my configuration:

# 2.0.16: /etc/dovecot/dovecot.conf
# OS: Linux 3.1.9-1.4-desktop i686 openSUSE 12.1 (i586)
auth_mechanisms = plain login
disable_plaintext_auth = no
log_timestamp = "%Y-%m-%d %H:%M:%S "
mail_fsync = always
mail_location = maildir:~/Maildir:INDEX=/var/indexes/%u
mail_nfs_storage = yes
mail_privileged_group = vmail
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope 
encoded-character vacation subaddress comparator-i;ascii-numeric 
relational regex imap4flags copy include variables body enotify 
environment mailbox date ihave
passdb {
   args = /etc/dovecot/dovecot-sql.conf
   driver = sql
}
plugin {
   quota = dict:user::file:/var/vmail/%d/%n/.quotausage
   sieve = /var/vmail/%d/%n/.sieve
}
postmaster_address = postmaster at bigdata.nb.ca
service auth {
   unix_listener /var/spool/postfix/private/auth {
     group = postfix
     mode = 0660
     user = postfix
   }
   unix_listener auth-userdb {
     group = vmail
     mode = 0666
     user = vmail
   }
   user = root
}
service lmtp {
   inet_listener lmtp {
     port = 24
   }
   unix_listener /var/spool/postfix/private/dovecot-lmtp {
     mode = 0660
     user = postfix
   }
}
ssl_ca = </etc/postfix/smtpd.bundle
ssl_cert = </etc/postfix/smtpd.cert
ssl_key = </etc/postfix/smtpd.key
userdb {
   args = /etc/dovecot/dovecot-sql.conf
   driver = sql
}
protocol imap {
   imap_client_workarounds = delay-newmail
   mail_plugins = quota imap_quota
}
protocol pop3 {
   mail_plugins = quota
   pop3_uidl_format = %08Xu%08Xv
}
protocol lda {
   mail_plugins = sieve quota
}
protocol lmtp {
   mail_plugins = quota sieve
}

Luc




More information about the dovecot mailing list