>> - user opens INBOX and clicks on one unseen mail. >> - This mail is marked as Read on Outlook Express. >> - user clicks on Send/Recv button to check new mail. > It's a problem with Outlook Express interacting with the Cyrus-IMAP server. > What is happening is that OE is connecting to the Cyrus-IMAP server twice > (one to write the seen state, and one to re-sync the internal cache with the > server). This causes the re-sync to download the seen state before it is > stored on the IMAP server, which causes OE to reset it in the internal cache > (a second re-sync should show the correct state).
What we see with U Wash imap is the first connection getting killed by the second, because the mbox is read over NFS. Outlook Express does this two-connection dance every time it checks for mail, so if the user has it set to check automatically every 1 minute, you've got 120 user authentications a minute going on, in addition to the connections opened each time a message is read and needs to be marked seen. Compare to Mulberry or Netscape Communicator or Pine, and you will see they open one connection to select inbox and hold it open, using it to check for new mail, flag messages deleted and seen, and so on. Is this just a case of alternative designs? Does it make any sense at all to open a connection to change state and a connection to check state simultaneously-- does that sound like recommended programming practice for imap or anything else? Thus, > I'd blame Outlook Express but unfortunately I have another working IMAP > server for comparision ;) I disagree. You're well justified in calling it buggy and recommending something else. Entourage is no better. Joseph Brennan [EMAIL PROTECTED] Academic Technologies Group, Academic Information Systems (AcIS) > > I also see this OE problem, when reading messages in a folder, leaving it, > and then immediately going back to the folder. The messages that I had read > are now shown as closed yellow envelopes (OE unread, but downloaded state). > Wait for OE to re-sync the folder and then OE shows the messages as read > (white open envelopes). > > When Cyrus-IMAP writes the seen state, it first makes a copy of cyrus.seen > to cyrus.seen.new(?). This allows other IMAP connections to read the seen > state from cyrus.seen, while the first connection is updating > cyrus.seen.new(?). When it finishes it moves the file to cyrus.seen. > > The reason you are not seeing this problem with the UW-IMAP server > (IMAP4rev1 v12.258), is because the UW-IMAP server stores all messages in > one file (i.e. unix mbox format). This requires the UW-IMAP server to lock > the file when it is writing to it, which prevents other connections from > reading the file, until the lock is removed. > > You'll find other annoying problems with OE: > Problem: New message arrives, select it in OE, OE shows it marked > deleted and doesn't show the contents. > > Fix: Right click on folder, choose properties, select local tab, click > delete, compact, and OK buttons. Then re-sync the folder and read the > new message. > > Scot