[Dovecot] Leave mail on server leads to dup messages

Arliss Jameson arlissjameson at yahoo.com
Sat Apr 5 01:14:21 EEST 2008


Hi. I'm a dovecot newbie. I've set my pop client to leave messages on the server for 7 days. I'm downloading the same messages over and over as dovecot appears to be overwriting X-UID's in the mbox's. I can't think of any other program on the system that might write to the mbox other than postfix (and that program doesn't appear to be writing X-UID). My setup has one user (system account: vmail) that owns all mbox's. The user_query always returns vmail's home, uid and gid (you can view the SELECT's in the log snippet below).I have a total of four pop3 virtual mbox's. The example below illustrates what happens to one of them (though this problem extends to the others as well).

Here's what happens:

1) Start with an empty mbox

2) Start dovecot

3) Download mail (received one email)

cat mbox | egrep "X-UID:"
X-UID: 789   

4) Download mail again (received another email)

cat mbox | egrep "X-UID:"
X-UID: 789                                                  
X-UID: 790 

5) Download mail once more (received three spam emails)

cat mbox | egrep "X-UID:"
X-UID: 811                                                  
X-UID: 812                                                  
X-UID: 813                                                  
X-UID: 814                                                  
X-UID: 815

What the?!

6) Check log

dovecot: Apr 04 13:51:42 Info: auth(default): new auth connection: pid=12843

dovecot: Apr 04 13:51:42 Info: auth(default): client in: AUTH    1    PLAIN    service=POP3    lip=76.158.191.23    rip=44.156.77.13    resp=<hidden>

dovecot: Apr 04 13:51:42 Info: auth-worker(default): sql(imacrawler at searchingforaddressestospam.com,44.156.77.13): query: SELECT CONCAT(username, '@', domain) AS user, password FROM (SELECT vuser.username, vuser.password, vdomain.name AS domain FROM vuser LEFT JOIN vdomain ON vuser.vdomain_id=vdomain.id) a WHERE a.username='imacrawler' AND a.domain='searchingforaddressestospam.com'

dovecot: Apr 04 13:51:42 Info: auth(default): client out: OK    1    user=imacrawler at searchingforaddressestospam.com

dovecot: Apr 04 13:51:42 Info: auth(default): master in: REQUEST    7    12837    1

dovecot: Apr 04 13:51:42 Info: auth-worker(default): sql(imacrawler at searchingforaddressestospam.com,44.156.77.13): SELECT '/vmail' AS home, CONCAT('mbox:~/mail:INBOX=/var/spool/vmail/', TRIM('searchingforaddressestospam.com'), '/', TRIM('imacrawler')) AS mail, 103 AS uid, 104 AS gid

dovecot: Apr 04 13:51:42 Info: auth(default): master out: USER    7    imacrawler at searchingforaddressestospam.com    home=/vmail    mail=mbox:~/mail:INBOX=/var/spool/vmail/searchingforaddressestospam.com/imacrawler    uid=103    gid=104

dovecot: Apr 04 13:51:42 Error: POP3(imacrawler at searchingforaddressestospam.com): mbox sync: Expunged message reappeared in mailbox /var/spool/vmail/searchingforaddressestospam.com/imacrawler (UID 789 < 796, seq=1, idx_msgs=0)

dovecot: Apr 04 13:51:42 Info: pop3-login: Login: user=<imacrawler at searchingforaddressestospam.com>, method=PLAIN, rip=44.156.77.13, lip=76.158.191.23

dovecot: Apr 04 13:51:42 Error: POP3(imacrawler at searchingforaddressestospam.com): mbox sync: UID inserted in the middle of mailbox /var/spool/vmail/searchingforaddressestospam.com/imacrawler (796 > 789, seq=1, idx_msgs=5)

dovecot: Apr 04 13:51:42 Error: POP3(imacrawler at searchingforaddressestospam.com): mbox sync: UID inserted in the middle of mailbox /var/spool/vmail/searchingforaddressestospam.com/imacrawler (801 > 789, seq=1, idx_msgs=5)

dovecot: Apr 04 13:51:43 Error: POP3(imacrawler at searchingforaddressestospam.com): mbox sync: UID inserted in the middle of mailbox /var/spool/vmail/searchingforaddressestospam.com/imacrawler (806 > 789, seq=1, idx_msgs=5)

dovecot: Apr 04 13:51:43 Info: POP3(imacrawler at searchingforaddressestospam.com): Disconnected: Logged out top=0/0, retr=5/9032, del=0/5, size=8947

I have no idea why it's complaining about 796 or where that number even came from. Much thanks for any help you can give.

Here's my dovecot -n:
# 1.0.13: /usr/local/etc/dovecot.conf
log_path: /var/log/dovecot
protocols: pop3
ssl_disable: yes
disable_plaintext_auth: no
login_dir: /usr/local/var/run/dovecot/login
login_executable: /usr/local/libexec/dovecot/pop3-login
first_valid_uid: 103
last_valid_uid: 103
first_valid_gid: 104
last_valid_gid: 104
mail_privileged_group: vmail
mail_executable: /usr/local/libexec/dovecot/pop3
mail_plugin_dir: /usr/local/lib/dovecot/pop3
pop3_uidl_format: %08Xu%08Xv
auth default:
  verbose: yes
  debug: yes
  passdb:
    driver: sql
    args: /usr/local/etc/dovecot-sql.conf
  userdb:
    driver: sql
    args: /usr/local/etc/dovecot-sql.conf








      ____________________________________________________________________________________
You rock. That's why Blockbuster's offering you one month of Blockbuster Total Access, No Cost.  
http://tc.deals.yahoo.com/tc/blockbuster/text5.com



More information about the dovecot mailing list