Over the last few months, there have been numerous reports of significant BES message delivery delays when running Exchange 2010, sometimes in excess of 20 minutes. In addition to the primary symptom of message delivery delays to BES handhelds, environments experiencing this issue saw extremely high RPC Averaged Latency during periods of high BES utilization. Despite being generously sized for RAM on Exchange 2010 Mailbox servers already, many firms dramatically increased RAM in their Mailbox servers to compensate for this issue, with amounts totaling 36 GB for 500 active BES users in many cases. More information on some of the history and user experience with this issue can be found here.
While there were a number of technical reasons for this problem, a primary reason was changes to named properties in Exchange 2010. To avoid legacy issues with finite numbers of named properties (see my previous blog post for some more information), functionality was changed in Exchange 2010 such that named properties are now stored per mailbox instead of per database and anonymous headers are not promoted so as to avoid issues with reaching the finite limits. Since BES leverages a number of named properties for its own functionality, the latter caused some significant performance delays when BES attempted to query non-promoted named properties.
Microsoft and RIM have been working very closely together to remediate this issue and I’m happy to announce that some significant progress has been made. If you are experiencing this problem currently, upgrading to MAPI/CDO 1.2.3 on your BES (see here) and BES itself to 5.0.2 Maintenance Release 4 (see here) should provide significant improvement on the BES functionality side. Additional updates from Microsoft and RIM will be coming in the near future but, in the interim, these updates should help improve performance dramatically.
Update: The new MAPI/CDO was released as an updated version of 1.2.1, not version 1.2.3 as expected. When downloading and installing the new MAPI/CDO, make sure you are installing version 1.2.1 dated 2/25/2011 and versioned 6.5.8211.0 (not the one dated 12/9/2009 and versioned 6.5.8147). The link above will direct you to the correct version.