Topic Last Modified: 2007-01-23

The Microsoft® Exchange Server Analyzer Tool uses the Exchange Server User Monitor (ExMon) tool to determine whether user MAPI operations are taking longer than should reasonably be expected on a healthy server that is running Exchange Server.

As part of its analysis, the Exchange Server Analyzer reviews the ExMon data for user-issued MAPI SetColumns operations that have taken longer than 30 seconds to be completed.

A basic view is created by using the MAPI call SetColumns. The call to SetColumns defines the properties which will be columns in the new view table.

The first time that a property is requested in a view, the server must do extra work to generate the view. After that property is requested in a view, it will always be present for future views. This means that the first time new properties are requested, the call to SetColumns can take much longer. The time that is required is proportional to the number of new properties and the number of items in the folder. For example, the first time that a user views their inbox after a mailbox move, the server will take longer to generate the view. This is because views are not moved with a mailbox move. The views will be recreated.

It is generally very expensive to add properties to the view. The cost of adding properties is proportional to the number of items in the folder and to the number of properties that are being added. General Microsoft Office® Outlook® usage will not cause many properties to be added to the message folder table, but more can be added manually. This is not generally a problem. However, you may experience delays if an application regularly adds columns, adds many columns, or if any client adds several columns over many items. The more columns in the message folder table, the more overhead there is to all other actions on items in that folder. As soon as a column is added, it cannot be removed. Each property in the Message-Folder table adds overhead to insert items in that folder.

If the Exchange Server Analyzer determines that a user-issued MAPI SetColumns operation has taken longer than 30 seconds, the Exchange Server Analyzer displays an error.

The first time that a user accesses their mailbox after it has been moved to a new database or a new server, the server will have to create new views. In that case, long SetColumns and long Restrict calls are expected. You can safely ignore these errors for several days after you move a mailbox.

Some applications will create new views and cause properties to be promoted to internal store data structures. This can have a long-term performance effect on the server when the server accesses that user's data. If the identified user or users experience frequent delays or delays that adversely affect their messaging experience, you should understand why. Work with the user who is experiencing the high latency to determine the following:

To address this issue, follow these steps:

Some applications can significantly increase server load without issuing lots of MAPI operations. This is because some operations are more expensive than other operations. It may take only a small increase in the number of costly operations to noticeably affect server performance. In ExMon, users are reported as having a high CPU effect, without necessarily having issued many MAPI operations.

Also, you should be aware that when there is a bottleneck for resources, generally a disk or CPU bottleneck, the latencies for the SetColumns operations will increase.

For More Information

For more information, see the following Exchange Server resources: