Thanks! I'm trying the dovecot-stable fix now (so far so good!)
I've also re-run my test69 test (three messages delivered at once whilst idle) using test70 and I get the same as before. This time I've included an extra flag fetch first so you can see the extra fetch responses really are bogus, the flags haven't changed.
. SELECT INBOX
- FLAGS (\Answered \Flagged \Deleted \Seen \Draft)
- OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft \*)] Flags permitted.
- 717 EXISTS
- 0 RECENT
- OK [UIDVALIDITY 1111502437] UIDs valid
- OK [UIDNEXT 24799] Predicted next UID . OK [READ-WRITE] Select completed. . FETCH 691:700 (FLAGS)
- 691 FETCH (FLAGS (\Seen))
- 692 FETCH (FLAGS (\Seen))
- 693 FETCH (FLAGS (\Seen))
- 694 FETCH (FLAGS (\Seen))
- 695 FETCH (FLAGS (\Seen))
- 696 FETCH (FLAGS (\Seen))
- 697 FETCH (FLAGS (\Seen))
- 698 FETCH (FLAGS (\Seen))
- 699 FETCH (FLAGS (\Seen))
- 700 FETCH (FLAGS (\Seen)) . OK Fetch completed. . IDLE
- idling
- 693 FETCH (FLAGS (\Seen))
- 694 FETCH (FLAGS (\Seen))
- 695 FETCH (FLAGS (\Seen))
- 720 EXISTS
- 3 RECENT DONE . OK Idle completed. . LOGOUT
- BYE Logging out . OK Logout completed.
This doesn't happen with dovecot-stable. I'm wondering whether it might be a different issue, after all. If it's only giving spurious but correct responses, then I guess a real client/user wouldn't notice.
Best Wishes, Chris
Timo Sirainen wrote:
On Fri, 2005-05-13 at 15:21 +0100, Chris Wakelin wrote:
It seems similar to the 1.0-stable issue, only the spurious FETCH responses seem to give the wrong flags then (but I can't reproduce this on demand).
I think the basic idea is this:
- Update the flags for the last message --> because of lazy-writing Dovecot just marks the message dirty
- New message arrives on the mailbox --> Dovecot re-reads the last message, forgets the dirty state
- close the mailbox --> Because the dirty state is forgotten, the flag is never written to mbox
Fixed in CVS now for both 1.0-test and 1.0-stable.
-- --+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+- Christopher Wakelin, c.d.wakelin@reading.ac.uk IT Services Centre, The University of Reading, Tel: +44 (0)118 378 8439 Whiteknights, Reading, RG6 2AF, UK Fax: +44 (0)118 975 3094