Recently after upgrading to 1.2 Beta3 from 1.1.13, I started to defer mail. After looking into it deeper, it looks like Dovecot/sieve now asks for a tmp folder in the imap (maildir) folder. Once I added the tmp folder as the logs indicants, the mail was processed normally.
I have split my Inbox and imap store to different folder. Looking at what it's trying to do, it looks to me that dovecot/sieve expect the imap directory to be the Inbox.
Is this a bug, or intended behaver?
# Log output, when requeueing the message in postfix, with mail_debug on ######################################################################### Mar 24 12:02:50 samantha postfix/qmgr[6855]: EB4141237BD: from=<colleen@example.com>, size=493284, nrcpt=1 (queue active) Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): Loading modules from directory: /usr/local/lib/dovecot/lda Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): Module loaded: /usr/local/lib/dovecot/lda/lib10_quota_plugin.so Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): Module loaded: /usr/local/lib/dovecot/lda/lib20_expire_plugin.so Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): Module loaded: /usr/local/lib/dovecot/lda/lib90_cmusieve_plugin.so Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): auth input: maildir=example.com/jill@example.com/ Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): auth input: uid=1000 Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): auth input: gid=1000 Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): auth input: quota_rule=*:storage=524288 Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): Quota root: name=User quota backend=maildir args= Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): Quota rule: root=User quota mailbox=* bytes=536870912 messages=0 Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): Quota rule: root=User quota mailbox=Trash bytes=53687091 (10%) messages=0 Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): Quota rule: root=User quota mailbox=Junk bytes=107374182 (20%) messages=0 Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): maildir: data=/var/spool/virtualmailboxes/example.com/jill@example.com/imap/:INBOX=/var/spool/virtualmailboxes/example.com/jill@example.com/:INDEX=/var/spool/virtualmailboxes/Indexes/example.com/jill@example.com/ Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): maildir++: root=/var/spool/virtualmailboxes/example.com/jill@example.com/imap, index=/var/spool/virtualmailboxes/Indexes/example.com/jill@example.com, control=, inbox=/var/spool/virtualmailboxes/example.com/jill@example.com Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): cmusieve: /var/spool/virtualmailboxes/example.com/jill@example.com/dovecot.sieve doesn't exist Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): cmusieve: Using sieve path: /var/spool/sieve/dovecot.sieve Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): cmusieve: Executing script /var/spool/sieve/dovecot.sievec Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): Namespace : Using permissions from /var/spool/virtualmailboxes/example.com/jill@example.com/imap: mode=0700 gid=-1
Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): creat(/var/spool/virtualmailboxes/example.com/jill@example.com/imap/tmp/temp.samantha.mattrude.com.3117.1237914170.3117.a079d2990c013f70) failed: No such file or directory
Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): copy: i_stream_read() failed: No such file or directory Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): msgid=<85866319ca18bf9cd994e34fe806c4f5.squirrel@mail.mattrude.com>: save failed to INBOX: Internal error occurred. Refer to server log for more information. [2009-03-24 12:02:50] Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): sieve runtime error: Keep: Generic Error Mar 24 12:02:50 samantha dovecot: deliver(jill@example.com): sieve_execute_bytecode(/var/spool/sieve/dovecot.sievec) failed Mar 24 12:02:50 samantha postfix/pipe[3116]: EB4141237BD: to=<jill@example.com>, relay=dovecot, delay=540, delays=540/0.03/0/0.14, dsn=4.3.0, status=deferred (temporary failure. Command output: Internal error occurred. Refer to server log for more information. [2009-03-24 12:02:50] )
############################################################### # dovecot -n # 1.2.beta3: /usr/local/etc/dovecot.conf # OS: Linux 2.6.27.19-170.2.35.fc10.i686 i686 Fedora release 10 (Cambridge) ext3 protocols: imap imaps pop3 pop3s listen(default): *:143 listen(imap): *:143 listen(pop3): * ssl_listen(default): *:993 ssl_listen(imap): *:993 ssl_listen(pop3): ssl_cert_file: /etc/postfix/SSL/mail.example.com.cert ssl_key_file: /etc/postfix/SSL/mail.example.com.key login_dir: /usr/local/var/run/dovecot/login login_executable(default): /usr/local/libexec/dovecot/imap-login login_executable(imap): /usr/local/libexec/dovecot/imap-login login_executable(pop3): /usr/local/libexec/dovecot/pop3-login login_user: postfix mail_location: maildir:/var/spool/virtualmailboxes/%d/%u/imap/:INBOX=/var/spool/virtualmailboxes/%d/%u/:INDEX=/var/spool/virtualmailboxes/Indexes/%d/%u/ mail_debug: yes mail_executable(default): /usr/local/libexec/dovecot/imap mail_executable(imap): /usr/local/libexec/dovecot/imap mail_executable(pop3): /usr/local/libexec/dovecot/pop3 mail_plugins(default): autocreate expire quota imap_quota zlib trash mail_plugins(imap): autocreate expire quota imap_quota zlib trash mail_plugins(pop3): quota expire mail_plugin_dir(default): /usr/local/lib/dovecot/imap mail_plugin_dir(imap): /usr/local/lib/dovecot/imap mail_plugin_dir(pop3): /usr/local/lib/dovecot/pop3 auth default: mechanisms: plain login cram-md5 cache_size: 128 cache_ttl: 600 passdb: driver: sql args: /etc/dovecot-mysql.conf userdb: driver: sql args: /etc/dovecot-mysql.conf socket: type: listen client: path: /var/spool/postfix/private/auth mode: 432 user: postfix group: postfix master: path: /var/run/dovecot/auth-master mode: 384 user: virtualmail group: virtualmail plugin: autocreate: Drafts autocreate2: Sent autocreate3: Trash autocreate4: Junk autocreate5: Junk.IsSpam autocreate6: Junk.IsNotSpam autosubscribe: Drafts autosubscribe2: Sent autosubscribe3: Trash autosubscribe4: Junk autosubscribe5: Junk.IsSpam autosubscribe6: Junk.IsNotSpam expire: Trash 30 Junk 30 expire_dict: proxy::expire quota: maildir:User quota quota_rule: *:storage=10M quota_rule2: Trash:storage=10%% quota_rule3: Junk:storage=20%% sieve: /var/spool/virtualmailboxes/%d/%u/dovecot.sieve sieve_storage: = /var/spool/virtualmailboxes/%d/%u/ trash: /etc/dovecot-trash.conf dict: expire: db:/var/spool/imap/expire.db
Thanks -Matt
-- Matt Rude http://www.mattrude.com - wiki: http://wiki.mattrude.com