On Fri, 2005-05-27 at 10:51 -0700, Kevin Baker wrote: > Thanks for the explination I totally understand now. > > That being said, what is the actual harm in one message id > being even a second off for the UID. They will both be > entered in the mailstore, even if they are slightly out of > order.
It matters because if a client sees a mailbox and the highest UID is 287 and UID 286 comes in later it will NEVER KNOW about UID 286 which means mail is lost and the user is confused. RFC2060 actually _encourages_ IMAP client authors to make this optimization. > Ultimately the Mail client will sort by the header > information and if the clocks are different then they will > be out of order. No. You're confusing Received-time and UID-time. You also assume clients perform an IMAP SEARCH ALL NOT DELETED operation whenever a new message comes in. There's no such guarantee. If a client saw "LAST UID=287" twice in a raw, then it'll never download UID 286. It'll just never be fetched. Here's the roadmap: UID 287 inserted client sees highest UID number is 287 UID 286 inserted client NEVER DOWNLOADS UID 286 It never does because it has no reason whatsoever to think it exists. Some IMAP clients will detect it later because they do an IMAP SEARCH operation and treat the mailbox as a cache (Netscape, Thunderbird), but others will never notice it until UIDVALIDITY changes. > I should note that I've been running a Cyrus system for > some time now that occasionally has messages arrive one or > two spots out of order, due to latency with mailfilters. > It really isn't a problem. Cyrus _NEVER_ inserts UIDs before the highest number. Received time has nothing to do with it. > I realize this might bend the RFC slightly... but the > added functionality is great and it will not break any > mail clients. I am all for complete RFC compliance, but if > we are talking about a matter of a second here and there > due to processor lag I think we are probably going > overboard. No. It's a very serious violation of RFC2060. This "optimization" breaks client optimizations. It breaks _most_ mail clients in very subtle ways. People will complain. -- Internet Connection High Quality Web Hosting http://www.internetconnection.net/