Flags in public folders disappear when more than 25 flags are used
Hello,
I have been using flags in public folders for quite a while with no problems. Once the flags were added to all clients (Thunderbird), they were visible and synchronized properly. Now I have added some new flags, and in the dovecot-keywords files I see that I am now using more than 25 flags (in which case they are not stored using an additional letter in the filename). Now I see that newly added flags are only visible in the client for a short time and then suddenly disappear.
How can I debug this, or what may be a reason for this?
Regards Thomas Herrmann
root@mailsrv2:~# dovecot --version 2.1.7
root@mailsrv2:~# dovecot -n # 2.1.7: /etc/dovecot/dovecot.conf # OS: Linux 3.2.0-4-amd64 x86_64 Debian 7.5 xfs disable_plaintext_auth = no log_timestamp = "%Y-%m-%d %H:%M:%S " mail_fsync = never mail_location = maildir:/home/vmail/adwin.de/%n/Maildir mail_privileged_group = mail 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 imapflags namespace { inbox = yes location = prefix = separator = / subscriptions = yes type = private } namespace { list = children location = maildir:/home/vmail/public:INDEX=/home/vmail/adwin.de/%n/public prefix = ADwin/ separator = / subscriptions = no type = public } passdb { args = /etc/dovecot/dovecot-sql.conf driver = sql } plugin { acl = vfile sieve = /home/vmail/adwin.de/%n/dovecot.sieve sieve_dir = /home/vmail/adwin.de/%n/sieve sieve_extensions = +imapflags +imap4flags } protocols = imap lmtp sieve service auth { unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0660 user = postfix } unix_listener auth-master { mode = 0600 user = vmail } user = root } service imap-login { inet_listener imap { address = *,:: port = 56143 } inet_listener imaps { address = *,:: port = 56993 ssl = yes } service_count = 0 } service imap { vsz_limit = 512 M } service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { group = postfix mode = 0660 user = postfix } } service managesieve-login { executable = /usr/lib/dovecot/managesieve-login service_count = 0 } service managesieve { executable = /usr/lib/dovecot/managesieve } ssl_ca = </etc/dovecot/ca-bundle.crt ssl_cert = </etc/dovecot/XXXXXXXXXXXXXX.crt ssl_key = </etc/dovecot/XXXXXXXXXXXXXXX.key userdb { driver = passwd } userdb { args = uid=5000 gid=5000 home=/home/vmail/%d/%n allow_all_users=yes driver = static } protocol imap { mail_max_userip_connections = 100 mail_plugins = acl imap_acl } protocol imaps { mail_max_userip_connections = 100 mail_plugins = acl imap_acl } protocol lda { auth_socket_path = /var/run/dovecot/auth-master log_path = /home/vmail/dovecot-deliver.log mail_fsync = optimized mail_plugins = sieve acl postmaster_address = XXXXXXXX@XXXXX.de } protocol lmtp { mail_plugins = sieve acl }
On 07/02/2014 04:25 PM, Thomas Herrmann wrote:
root@mailsrv2:~# dovecot --version 2.1.7
Since I did not receive any replies to my previous question, I did the following:
- Upgraded to 2.2.13 (still debian packages)
- learned how to use doveadm to debug problems
Now I am a little closer to the problem. I discovered that the dovecot-keywords file is out of sync with what doveadm reports. Is that a problem? Any idea how that could happen and how to fix that? Strangely, doveadm reports less than 25 keywords.
root@mailsrv2:/home/vmail/public/.Info# cat dovecot-keywords 0 NonJunk [...] 20 zu_erledigen_ec 21 erledigt_bika 22 zu_erledigen_bik 23 erledigt_bik 24 sp_wichtig 25 erledigt_bl
-- Extension 3 -- name ........ = cache hdr_size .... = 0 reset_id .... = 1333086435 record_offset = 16 record_size . = 4 record_align = 4 -- Keywords -- 0 = NonJunk [...] 20 = sp_wichtig 21 = zu_erledigen_bik 22 = erledigt_bl
-- CACHE: ./dovecot.index.cache
Regards Thomas Herrmann
On 08.07.2014 17:01, Thomas Herrmann wrote:
Now I am a little closer to the problem. I discovered that the dovecot-keywords file is out of sync with what doveadm reports. Is that a problem?
To continue my monologue, this does not seem to be a problem. The numbering in the dovecot-keywords is different from the ones reported by doveadm in almost all of my folders.
Now that I am using 2.2.13, I have observed this:
- The flags that are present in the dovecot-keywords are synced between all clients.
- The flags that are not in the dovecot-keywords files are not synced between clients, they are in fact per-user keywords (I use per-user seen flags for the public folders). When I set the keywords, I see changes in the dovecot.index.* files located at "/home/vmail/adwin.de/%n/public", while that information should be stored at "/home/vmail/public".
Maybe this happens because I am using 2.2.* with INDEX instead of INDEXPVT, so now my question is, how do I upgrade from INDEX to INDEXPVT without losing information? Will dovecot convert the old files automatically? I did not find anything about that at http://wiki2.dovecot.org/Upgrading/2.2
Regards Thomas Herrmann
On 10.7.2014, at 12.54, Thomas Herrmann <THerrmann@ADwin.de> wrote:
Now that I am using 2.2.13, I have observed this:
- The flags that are present in the dovecot-keywords are synced between all clients.
- The flags that are not in the dovecot-keywords files are not synced between clients, they are in fact per-user keywords (I use per-user seen flags for the public folders). When I set the keywords, I see changes in the dovecot.index.* files located at "/home/vmail/adwin.de/%n/public", while that information should be stored at "/home/vmail/public".
Maybe this happens because I am using 2.2.* with INDEX instead of INDEXPVT,
Right.
so now my question is, how do I upgrade from INDEX to INDEXPVT without losing information? Will dovecot convert the old files automatically? I did not find anything about that at
I think it would work if you simply change INDEX -> INDEXPVT, but test first with some test users.
On 07/10/2014 05:37 PM, Timo Sirainen wrote:
Maybe this happens because I am using 2.2.* with INDEX instead of INDEXPVT,
Right.
Confirmed; I set up a testbed (2.2.13), and I have observed this:
when using public folders with per-user seen flags (using INDEX), only the first 25 keywords are shared, the other keywords are per-user.
the problem disappears when using INDEXPVT instead of INDEX
so now my question is, how do I upgrade from INDEX to INDEXPVT without losing information? Will dovecot convert the old files automatically? I did not find anything about that at
I think it would work if you simply change INDEX -> INDEXPVT, but test first with some test users.
Switching from INDEX to INDEXPVT keeps the first 25 keywords, and dumps the others (which is ok since they were not in sync anyways).
However, switching to INDEXPVT also lost the SEEN status for _some_ users. Any idea how to prevent that?
Will corrupted dovecot.index/log/cache files in the future automatically lead to a partial loss of keywords? I have been using and upgrading dovecot for quite a while now, and deleting cache files was often my first step when unexpected behaviour or strange log entries occurred...
Regards, Thomas
participants (2)
-
Thomas Herrmann
-
Timo Sirainen