Now we’ve got loads of items – what do we do about it?

So you’ve identified that high item counts is causing issues with Outlook performance.. but what do you do about it?

Well first first find out where it’s an issue. i.e. get message counts for all of your mailboxes and all folders where the item count is beyond the recommended guidelines.  Powershell makes this job a whole lot easier (You used to have to do it using PFDavAdmin like this.)

Rob Sealock has done the work for me here on his blog; Heavy on the Technical @

“Get-mailbox -server ExchangeServerNameHere| Get-MailboxFolderStatistics | where {$_.itemsInFolder -gt 5000} | sort-object -descending ItemsInFolder | select Identity,FolderPath,ItemsInFolder | .\out-html | .\out-ie”

(..making sure that the out-html and out-ie scripts are available in the right location.)

And then I’d approach it in two ways; User Education and Server Optimization.

Let’s start with User Education.   OK so not the easiest place to start but once you have the output from the script then you at least know who to target and in my experience most administrators know who the sufferers are. They tend to be groups of secretaries who manage multiple managers and therefore share multiple calendars, switching regularly between views.  This being the case the managers mailboxes are the ones to attack and with a bit of user education in Outlook views of the calendar it should be possible for the delegate to remove or archive old items and therefore improve performance…

If the problem is wider than that then you likely have a more entrenched issue and in that case it’s going to totally depend on the way your company works as to the likely success or failure of a program of user education.  Sometimes companies have regular positive contact with their user community and it may therefore be a success; others struggle with this and therefore any attempt to ‘educate’ a user may be met with limited success. [..or worse.]

Two – Server Optimization.  Firstly have a read of the following articles (or here) to get an understanding of what is happening under the bonnet.

..and my approach to this would be as follows:

A) - Run a health check of your own environment focusing on the performance aspects.  You need to make sure that the servers are performing within Microsoft best practise guidelines. Concentrate on storage, as always, as poor response times from the underlying storage is the most likely contributor to poor client performance.  Use a combination of ExBPA and ExPTA and\or additional manual performance monitoring.

B) – If you are satisfied that you don’t have a wider performance issue then the next step is further server or client optimization.

What can you do at the client? Make sure you have no more client locales as is required, make sure that all Outlook 2003 clients have SP1 or later installed (& 896418), remove any unwanted Outlook add-ins and remove any unwanted MAPI applications running on the clients computer. All of these will impact client performance.

What can you do at the server? (..and let’s assume that you didn’t come across any issues in your impromptu health check) Look to modify msExchMaxCachedViews per database to increase the number of cached search folders.  ..and there are 3 things to be aware of;

  1. Involve the GTSC (Microsoft Global Technical Support Centre) in this before you start.  If possible log a case with them to advise you as they can monitor the before and after and will give you the best advice as to how to proceed. If you need to go further and change PR_MAX_CACHED_VIEWS properties on individual folders for example make sure MS support are involved.
  2. Remember that this is a balancing act – the default is 11 for a reason (since Microsoft have found that this is the optimum setting for most deployments). If you change it there will be a knock-on effect, mainly as a result of the server now having to rebuild a larger number of search folders.  Carefully monitor performance and user experience as you increase the setting.
  3. Stop at 50.  Don’t set msExchMaxCachedViews to a value higher than 50 because any performance gain will likely be consumed in a lot of negative performance issues.

..and a word of warning – you may not actually ever resolve the issue. Negative perception is hard to change and these tweaks, whilst very likely to improve things, are unlikely in my experience to solve the problem over night.