[Dovecot] Seen flag getting lost
We have two dovecot 1.2 instances sharing Maildirs on NFS. Indexes are local to the individual servers. Occasionally (no idea how to trigger this), the Seen flag gets lost on some messages. I've verified that actually the ``S'' is missing from the filename. I suspect something like server A caching the flags, server B setting Seen, and then server A flushing its cache for another change so overwriting what B changed. Any ideas short of switching to 2.0?
If more than one Dovecot instance is accessing the same set of mailboxes over NFS or other network filesystem, you will need to use the directors. You may as well upgrade to 2.0.
On Oct 25, 2011, at 4:02 AM, Edgar Fuß wrote:
We have two dovecot 1.2 instances sharing Maildirs on NFS. Indexes are local to the individual servers. Occasionally (no idea how to trigger this), the Seen flag gets lost on some messages. I've verified that actually the ``S'' is missing from the filename. I suspect something like server A caching the flags, server B setting Seen, and then server A flushing its cache for another change so overwriting what B changed. Any ideas short of switching to 2.0?
On Tue, 2011-10-25 at 13:02 +0200, Edgar Fuß wrote:
We have two dovecot 1.2 instances sharing Maildirs on NFS. Indexes are local to the individual servers. Occasionally (no idea how to trigger this), the Seen flag gets lost on some messages. I've verified that actually the ``S'' is missing from the filename. I suspect something like server A caching the flags, server B setting Seen, and then server A flushing its cache for another change so overwriting what B changed.
That shouldn't happen because of Dovecot's indexes. Dovecot doesn't force Maildir to match its indexes. Whenever doing flag changes, it stores them as "add \Seen flag to UID 1234". Then the 'S' flag is added to the current Maildir filename without losing any other changes.
That shouldn't happen because of Dovecot's indexes. Hm, also if the indexes are local? Fine.
Then the 'S' flag is added to the current Maildir filename without losing any other changes. And this is supposed to work even over NFS? Great.
So, what can I do to track down the problem as, according to what I read from your answer, it's probably a Dovecot bug?
On 25/11/2011 12:49, Edgar Fuß wrote:
That shouldn't happen because of Dovecot's indexes. Hm, also if the indexes are local? Fine.
Then the 'S' flag is added to the current Maildir filename without losing any other changes. And this is supposed to work even over NFS? Great.
So, what can I do to track down the problem as, according to what I read from your answer, it's probably a Dovecot bug?
You don't have any Thunderbird clients accessing this box do you? I have some wierd issue where our TB with the option "don't mark message read", still triggers messages to be marked read... Wierdly it only does it on some messages and all those from specific senders - can't correlate it with anything obvious in the message itself though...
Regards
Ed W
You don't have any Thunderbird clients accessing this box do you? Yes, I have. But I also experienced the problem myself only using mutt and Apple Mail.
I have some w[ei]rd issue where our TB with the option "don't mark message read", still triggers messages to be marked read It's the other way round. People read their messages, they are flagged as read and all of a sudden revert to unread.
On 25.11.2011 17:59, wrote Ed W:
On 25/11/2011 12:49, Edgar Fuß wrote:
You don't have any Thunderbird clients accessing this box do you? I have some wierd issue where our TB with the option "don't mark message read", still triggers messages to be marked read... Wierdly it only does it on some messages and all those from specific senders - can't correlate it with anything obvious in the message itself though...
I had the same issue a while ago with Thunderbird. On one installation it worked on another it didn't. After comparing their config I found the culprit. Changing
mail.server.default.mime_parts_on_demand
to **false** fixed this issue for me.
This setting is discussed in...
http://kb.mozillazine.org/Entire_message_fetched_when_opening_a_IMAP_message
... but not mentioning the "don't mark message as read" issue.
Regards, e-frog
Englisch
Deutsch
Englisch
Deutsch
On 25.11.2011, at 14.49, Edgar Fuß wrote:
That shouldn't happen because of Dovecot's indexes. Hm, also if the indexes are local? Fine.
Yep. It just means that indexes then aren't fully up to date. Hmm. I guess possibly one potential problem is if
- dovecot.index.log says that "set flags to ()" but then it doesn't actually finish that
- Next time indexes are accessed from second server, and flags are set to (\Seen)
- And then finally user logs in back to original server, which sees that "aha, flags should be set to ()" and does that.
But the problem is the first step. It shouldn't normally do it only halfway through, unless it crashes or something.. Also typically flags aren't replaced, they're added/removed, but this completely depends on the client and I don't remember what Apple Mail does.
Then the 'S' flag is added to the current Maildir filename without losing any other changes. And this is supposed to work even over NFS? Great.
So, what can I do to track down the problem as, according to what I read from your answer, it's probably a Dovecot bug?
You could try enabling mail_log plugin with flag_change event to see when it actually changes. http://wiki.dovecot.org/Plugins/MailLog
participants (6)
-
Dovecot-GDH
-
e-frog
-
Ed W
-
Edgar Fuß
-
Noel Butler
-
Timo Sirainen