[Dovecot] mailboxes missing after upgrade from 2.1.4 to 2.1.7
Hi all,
I mentioned this on the #dovecot irc channel, but I thought I would post here so I can provide more details.
The basic problem is that when I upgraded from 2.1.4 to 2.1.7, some users no longer are able to see their folders in pine/alpine. The folders are actually there, and are subscribed (according to doveadm) and its possible to do operations on those folders, if you know the name (for example, opening the folder works fine if you know the name).
When I downgrade to 2.1.4 again, the folders appear again, so its clearly something that changed between the two versions. I looked through the changelog, and found a few possibile culprits, I think pine/alpine use imapc, so that could be related:
. imapc: Use imapc_list_prefix also for listing subscriptions . Fixed looking up parent mailbox name with different namespace vs. layout separators. . imapc: Don't list mailboxes that don't match list patterns. . layout=fs: Fixed listing mailboxes with prefix=INBOX/ . LIST with mailbox {} settings incorrectly set subscribed-flags.
Here is my dovecot -n output:
# OS: Linux 2.6.32-5-amd64 x86_64 Debian 6.0.5 auth_default_realm = example.net auth_verbose = yes default_process_limit = 256 default_vsz_limit = 512 M dict { expire = mysql:/etc/dovecot/dovecot-dict-sql.conf quota = mysql:/etc/dovecot/dovecot-dict-sql.conf } disable_plaintext_auth = no first_valid_gid = 8 first_valid_uid = 8 last_valid_gid = 8 last_valid_uid = 8 listen = * login_greeting = howdy, ready. mail_location = mdbox:~/mdbox:INDEX=/srv/dovecot_indexes/%d/%1n/%n mail_plugins = expire quota zlib stats maildir_very_dirty_syncs = yes namespace { inbox = yes location = prefix = separator = . } namespace { alias_for = hidden = yes inbox = no list = no location = prefix = INBOX. separator = . } passdb { args = /etc/dovecot/dovecot-sql.conf driver = sql } plugin { antispam_allow_append_to_spam = yes antispam_backend = pipe antispam_debug_target = syslog antispam_pipe_program = /usr/local/bin/train_spam antispam_pipe_program_args = -d;10.0.1.109 antispam_pipe_program_notspam_arg = ham antispam_pipe_program_spam_arg = spam antispam_pipe_tmpdir = /var/tmp antispam_signature = X-Spam-Flag antispam_signature_missing = error antispam_spam_pattern_ignorecase = SPAM antispam_trash_pattern = trash;Trash;Deleted * expire = Trash expire2 = Trash/* expire3 = Spam expire_dict = proxy::expire quota = dict:Your mail quota::proxy::quota quota_rule = *:bytes=100663296 quota_rule2 = Trash:bytes=+20%% quota_rule3 = Spam:bytes=+10%% quota_rule4 = INBOX.Trash:bytes=+20%% quota_rule5 = INBOX.Spam:bytes=+10%% quota_rule6 = INBOX.restored_from_backups:bytes=+500%% sieve = ~/.dovecot.sieve sieve_after = /var/lib/dovecot/sieve/after.sieve sieve_before = /var/lib/dovecot/sieve/default.sieve sieve_dir = ~/sieve stats_refresh = 30 secs stats_track_cmds = yes zlib_save = gz zlib_save_level = 6 } postmaster_address = postmaster@example.net protocols = " imap pop3" service anvil { unix_listener anvil { group = dovecot mode = 0660 user = root } } service auth { unix_listener auth-userdb { group = mail mode = 0600 user = mail } } service dict { unix_listener dict { group = mail mode = 0600 user = mail } } service imap-login { process_min_avail = 10 service_count = 0 vsz_limit = 512 M } service imap-postlogin { executable = script-login /usr/local/sbin/postlogin_imap } service imap { executable = imap imap-postlogin process_limit = 2048 } service pop3-login { process_min_avail = 10 service_count = 0 vsz_limit = 512 M } service pop3-postlogin { executable = script-login /usr/local/sbin/postlogin_pop } service pop3 { executable = pop3 pop3-postlogin } service stats { fifo_listener stats-mail { mode = 0600 user = mail } } ssl_cert = </etc/certs/wildcard/cert.pem ssl_cipher_list = HIGH:-ADH:-aNULL ssl_key = </etc/certs/wildcard/key.pem userdb { args = /etc/dovecot/dovecot-sql.conf driver = sql } verbose_proctitle = yes protocol lda { mail_plugins = expire quota zlib stats sieve plugin { quota_exceeded_message = Sorry, your message cannot be delivered to that person because their mailbox is full. If you can contact them another way, you may wish to tell them of this problem. quota_rule7 = INBOX:bytes=+10%% } } protocol imap { imap_client_workarounds = delay-newmail tb-extra-mailbox-sep mail_max_userip_connections = 20 mail_plugins = expire quota zlib stats imap_quota imap_zlib antispam imap_stats plugin { quota_exceeded_message = You are over quota. To avoid losing mail, immediately empty your Trash and Sent folders and delete emails with large attachments. Visit https://help.example.net/quota for more help. } } protocol pop3 { mail_plugins = expire quota zlib stats pop3_client_workarounds = outlook-no-nuls oe-ns-eoh pop3_uidl_format = %g }
As requested by tss in #dovecot, I attempted to add 'rawlog' to:
service imap-postlogin { executable = script-login /usr/local/sbin/postlogin_imap }
to get:
service imap-postlogin { executable = script-login rawlogin /usr/local/sbin/postlogin_imap }
but with that, it doesn't even open the INBOX folder, and there is nothing in the user's rawlog folder, I get this error:
dovecot: imap-postlogin: Error: Fatal: This process must not be run as root it didn't open even the INBOX imap folder
I went over the http://wiki2.dovecot.org/Debugging/Rawlog and made sure everything was correct there, but it still didn't work right.
Any ideas or suggestions of things to try would be greatly appreciated!
thanks, micah
Micah Anderson <micah@riseup.net> writes:
I mentioned this on the #dovecot irc channel, but I thought I would post here so I can provide more details.
The basic problem is that when I upgraded from 2.1.4 to 2.1.7, some users no longer are able to see their folders in pine/alpine. The folders are actually there, and are subscribed (according to doveadm) and its possible to do operations on those folders, if you know the name (for example, opening the folder works fine if you know the name).
When I downgrade to 2.1.4 again, the folders appear again, so its clearly something that changed between the two versions. I looked through the changelog, and found a few possibile culprits, I think pine/alpine use imapc, so that could be related:
I was able to solve this by changing the alpine folder-collection configuration to *not* have /INBOX.[] at the end and instead have just []!
micah
participants (1)
-
Micah Anderson