I had a huge problem at one of my clients. He has an Exchange 2016 CU8 with Windows 10 Clients and Outlook 2016 Build 8829 click-to-run. The customer has in total 20 mailboxes and all coworkers (5) in most cases have full access to each other. Some of the users have a big folder structure in the mailbox.
Outlook begins to stall while trying to access the mailboxes during startup of Outlook. If you look in the connection Details, you will see many connections to the different boxes and one or two lines where the VID/CID counts up really fast and changes the state between success and failure. Additionally, you see some garbage (random ASCII) in the mailbox name.
Big thanks to my collegue Wolle who is a geat Microsoft engineer. He found the issue which was causing the problem 🙂
The issue is caused because the user reaches the MAPI object and session limit of Exchange 2016. That is logged in „C:\Program Files\Microsoft\Exchange Server\V15\Logging\MapiHttp\Mailbox“ logs.
MoMTException:1246 (rop 1246) -> [TooManyObjectsOpenedException] Das Postfach /o=First Organization/ou=Exchange Administrative Group (XXXXXXXXXXXXXXXXXX)/cn=Recipients/cn=xxxxxxxxxxxxxxxxxxx-Customer kann nicht geöffnet werden. -> [MapiExceptionSessionLimit] Unable to open message store.
Additionally, the user runs into the MAPI limits due to the high access rate and the Exchange server begins to throttle down the connections.
These two things fixes the problems of my customer. Be aware that setting throttling to unlimited is typically not a good idea, but in this small environment it is okay.
In Exchange Powershell, create a new throttling policy and apply it to all affected mailboxes:
New-ThrottlingPolicy -Name "New Throttling" -RCAMAXConcurrency Unlimited get-mailbox -name | set-mailbox -ThrottlingPolicy "New Throttling"
A new registry key to raise the MAPI objects limit and the maximum allowed sessions per user:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSExchangeIS\ParametersSystem\MaxObjsPerMapiSession] "objtMessage"=dword:000005dc [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSExchangeIS\ParametersSystem] "Maximum Allowed Sessions Per User"=dword:00000080
After changing the Limit, you must restart the Exchange Information Store service.