Exchange 2010 IMAP fetch dropping every 50th message
Hello,
I'm trying to diagnose an imap problem with our new Exchange 2010 server. Connecting using IMAP (as about half our clients do), the clients fail to retrieve a folder listing. Debugging by talking imap directly, it seems that if you request the
envelopes of 2047 or more messages at once, then every 50th message is missing. This means that clients opening a folder for the first time get an incomplete response, and fail to display the contents of the folder as they're still waiting for the full
response from the imap server. If you fetch fewer than 2047 envelopes, then the problem does not occur. If you fetch 2047 or greater than messages 1,51,101,151,201, etc are missing from the response.
Once logged in, I selected a test folder with exactly 5000 messages in it:
1 login username password
1 status "foldername" (messages)
- reported that it had 5000 messages available.
1 select "foldername"
1 fetch 1:* (envelope)
- Naturally a lot of output, but missing 1 in 50 messages. .
Has anyone encountered this before, or know of a workaround?
February 18th, 2011 5:46am
Hi Simon,
From your description, I understand that if you request the envelopes of 2047 or more messages at once, the every 50th message is missing. For this issue, I suggest you follow these steps to troubleshoot the
problem:
1.
Please follow this document to check the client access Throttling for IMAP.
Exchange 2010 Client Access Throttling.
http://blogs.msdn.com/b/pepeedu/archive/2010/01/13/exchange-2010-client-access-throttling.aspx
2.
Improve Eventlog level to help you troubleshoot the problem.
Update logging levels for services
MSExchange IMAP4, then check the event log.
Manage Diagnostic Logging Levels
http://technet.microsoft.com/en-us/library/dd335139.aspx
Thanks,
Evan
Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread.
Free Windows Admin Tool Kit Click here and download it now
February 23rd, 2011 8:19am
Hi Evan, thanks for your response.
I've followed the link to the discussion of the Client Access Throttling. Running:
"Get-LogonStatistics –Identity testuser | fl applicationid" as suggested returns no results when the user is not connected, and one result when running the fetch test script that doesn't return all the header information. I
checked both the CAS and the mailbox server in case the CAS queried the back-end in parallel. Nevertheless, in case it was the problem I increased RCAMaxConcurrency, and I also increased IMAPMaxConcurrency. Neither has changed the problem symptoms.
The test is only using one IMAP connection, and making a single request for a range of messages, so I'd expect there to be only one connection noticed.
Based on the second link, I've done the following (It didn't like the \General for some reason, hence the two-stage way of getting the right identity), and restarted the imap service:
Get-EventLogLevel -identity "MSExchange IMAP*" | Set-EventLogLevel -level Expert
However, nothing is logged when the user connects, or attempts to retrieve anything. Similarly when set to "High" rather than "Expert" - I asked Event Viewer to show me everything generated by the "MSExchange IMAP4 service".
I'm sorry if this is a silly question, but what's the best place to look to find the information it logs?
Thanks again,
Simon.
February 23rd, 2011 10:57am
For those looking for an answer to this in future, it's apparently fixed in Update Rollup 3 for Exchange Server 2010 Service Pack 1.
http://support.microsoft.com/kb/2494798
Free Windows Admin Tool Kit Click here and download it now
March 9th, 2011 6:38am