Hi,
I've just switch from procmail to pigeonhole, and I'm seeing an issue (twice in six hours).
I have spamassisn running via postfix milter, and dropping off via main.cf "mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp"
The issue is that I get a sequence of these log messages:
Aug 21 19:43:59 lmtp(toppk): Debug: Junk: Mailbox opened because: lib-lda delivery Aug 21 19:43:59 lmtp(toppk): Debug: $MAILDIR/Junk: Mailbox opened because: lib-lda delivery Aug 21 19:43:59 lmtp(toppk): Debug: Mailbox <lmtp DATA>: Opened mail UID=1 because: copying Aug 21 19:43:59 lmtp(toppk): Debug: Mailbox <lmtp DATA>: Opened mail UID=1 because: virtual size (Cache file is unusable) Aug 21 19:43:59 lmtp(toppk): Info: YK1SNj9wm1kMaQAAjC58EQ: sieve: msgid=<E1cxyRv-000F7r-E9@tra-vmail-01>: store into mailbox 'Junk' aborted Aug 21 19:43:59 lmtp(toppk): Debug: INBOX: Mailbox opened because: lib-lda delivery Aug 21 19:43:59 lmtp(toppk): Debug: Mailbox <lmtp DATA>: Opened mail UID=1 because: copying Aug 21 19:43:59 lmtp(toppk): Info: YK1SNj9wm1kMaQAAjC58EQ: sieve: msgid=<E1cxyRv-000F7r-E9@tra-vmail-01>: stored mail into mailbox 'INBOX' Aug 21 19:43:59 lmtp(toppk): Info: YK1SNj9wm1kMaQAAjC58EQ: sieve: Execution of script /home/toppk/.dovecot.sieve failed, but implicit keep was successful (user logfile /home/toppk/.dovecot.sieve.log may reveal additional details)
and in /home/toppk/.dovecot.sieve.log I get this:
sieve: info: started log at Aug 21 19:43:59. error: msgid=<E1cxyRv-000F7r-E9@tra-vmail-01>: failed to store into mailbox '$MAILDIR/Junk': Mailbox doesn't exist: $MAILDIR/Junk.
So instead of the email going into mbox /home/toppk/mail/Junk it goes into INBOX (/var/mail/toppk).
I'm watching the Junk to see if is removed for even a split second and I don't see that. I'm not sure how to further track this down, or if there is a more optimal configuration (i'd prefer to stay mbox if possible).
I was thinking of turning on mailbox_list_index.
Below is the full doveadm -n output.
Any guidance or suggestions welcome.
Ken
# 2.2.31 (65cde28): /etc/dovecot/dovecot.conf # Pigeonhole version 0.4.19 (e5c7051) # OS: Linux 4.12.4-300.fc26.x86_64 x86_64 Fedora release 26 (Twenty Six) auth_debug = yes auth_username_format = %Ln log_path = /var/log/dovecot.log mail_debug = yes 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 index ihave duplicate mime foreverypart extracttext mbox_write_locks = fcntl namespace inbox { inbox = yes location = mailbox Drafts { special_use = \Drafts } mailbox Junk { special_use = \Junk } mailbox Sent { special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { special_use = \Trash } prefix = } passdb { driver = pam } plugin { sieve = file:~/sieve;active=~/.dovecot.sieve sieve_default = /etc/dovecot/sieve/default.sieve } protocols = imap lmtp sieve service auth { unix_listener auth-client { group = postfix mode = 0660 user = postfix } unix_listener auth-master { group = mail mode = 0660 user = mail } user = root } service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { group = postfix mode = 0600 user = postfix } } service managesieve-login { inet_listener sieve { port = 4190 } } service managesieve { process_limit = 1024 } ssl = required ssl_cert = </etc/pki/dovecot/certs/dovecot.pem ssl_cipher_list = ALL:!LOW:!SSLv2 ssl_key = # hidden, use -P to show it userdb { driver = passwd } verbose_ssl = yes protocol lmtp { mail_plugins = " sieve" } protocol lda { info_log_path = /var/log/dovecot-lda.log log_path = /var/log/dovecot-lda-errors.log } protocol sieve { info_log_path = /var/log/dovecot-sieve.log log_path = /var/log/dovecot-sieve-errors.log mail_max_userip_connections = 10 managesieve_implementation_string = Dovecot Pigeonhole managesieve_max_line_length = 65536 }