git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Query: Patches break with Microsoft exchange server.

From
David Woodhouse <dwmw2@infradead.org>
Date
Aug 11, 2010, 15:58 UTC
Message-ID
<1281542305.5107.11.camel@localhost>
In-Reply-To
<4C62C5BD.3020808@mnsu.edu>
On Wed, 2010-08-11 at 10:46 -0500, Jeffrey Hundstad wrote:
Show 10 quoted lines
> Exchange 2010 does not handle IMAP "chunking" (partial message transfer) 
> correctly.  Any request after about 1 megabyte of total message size 
> will fail.
> 
> Thunderbird uses this "chunking" feature to give you a status update 
> while downloading large messages.  The IMAP statements are of this type:
> 11 UID fetch 244477 (UID RFC822.SIZE BODY[]<20480.12288>)
> 
> When the 20480 is larger than 1MB Exchange "claims" there is no more.  
> Sigh.... 

I think the problem is not with the fetching -- the problem is that Exchange lies about RFC822.SIZE before the IMAP client even starts to fetch the message. It reports a size which is smaller than the actual size of the message, thus leading to truncated fetches.

In Evolution we have a workaround -- we don't just stop when we get to the reported RFC822.SIZE; we continue fetching more chunks until the server actually stops giving us any more. It's not as efficient (because we fall back to having only one more chunk outstanding at a time rather than the normal three in parallel), but at least it works around this brokenness of Exchange.

http://git.gnome.org/browse/evolution-data-server/commit/?id=9714c064
-- 
David Woodhouse                            Open Source Technology Centre
David.Woodhouse@intel.com                              Intel Corporation
Previous: Jeffrey HundstadNext: Jeffrey Hundstad
Message 4 of 9 in “Re: Query: Patches break with Microsoft exchange server.”
  1. Felipe ContrerasAug 10, 2010
  2. viresh kumarAug 11, 2010
  3. Jeffrey HundstadAug 11, 2010
  4. David WoodhouseAug 11, 2010
  5. Jeffrey HundstadAug 11, 2010
  6. Avery PennarunAug 11, 2010
  7. David WoodhouseAug 11, 2010
  8. Avery PennarunAug 11, 2010
  9. viresh kumarAug 12, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.