The number of Ongoing Calls currently waiting on virus-scanning is near the limit.

[This topic is intended to address a specific issue called out by the Exchange Server Analyzer Tool. You should apply it only to systems that have had the Exchange Server Analyzer Tool run against them and are experiencing that specific issue. The Exchange Server Analyzer Tool, available as a free download, remotely collects configuration data from each server in the topology and automatically analyzes the data. The resulting report details important configuration issues, potential problems, and nondefault product settings. By following these recommendations, you can achieve better performance, scalability, reliability, and uptime. For more information about the tool or to download the latest versions, see "Microsoft Exchange Analyzers" at https://go.microsoft.com/fwlink/?linkid=34707.]  

Topic Last Modified: 2009-09-16

The Microsoft® Exchange Server Analyzer Tool examines the Exchange Function Call Log (FCL), the Store.fcl file, to determine the number of current, ongoing cross-component calls from the Microsoft Exchange Information Store service (Store.exe) to the Virus API (VAPI) component.

The Exchange Server Analyzer also queries the ScanningThreads key from the following registry entry to determine the maximum number of threads allowed for VAPI component calls:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeIS\VirusScan

Ongoing calls are requests from the Microsoft Exchange Information Store service (Store.exe) to other components that have not received a response at the time the Exchange FCL data is written to the Store.fcl file.

If the Exchange Server Analyzer finds that the number of ongoing calls from the Exchange Information Store service (Store.exe) to the VAPI component approaches the maximum number of threads allowed, the Exchange Server Analyzer displays an error.

When cross-component calls from the Microsoft Exchange Information Store service (Store.exe) wait for a response, remote procedure call (RPC) threads can back up behind these requests and lead to Exchange Server performance issues such as delays in server responses to clients.

Ongoing calls from the Microsoft Exchange Information Store service to the VAPI component can be caused by conditions:

  • Updates to a virus scanner which generate a re-scan of items in the information store.

  • A misconfigured virus scanner

  • Virus scanner software processes a large message or attachment

To resolve this error, take the following steps:

  • Schedule updates to your virus engine for times when resource consumption is low, that is, off-peak demand intervals.

  • Consider reinstalling the virus scanning software, but reinstall at off-peak demand intervals.

  • Examine the configuration of your virus scanning engine for the correct thread configuration, file level exclusions, and so on. See Microsoft Knowledge Base article 823166, "Overview of Exchange Server 2003 and antivirus software" (https://go.microsoft.com/fwlink/?linkid=3052&kbid=823166).

  • Increase the thread count for the virus scanning API:

    The optimal value for ScanningThreads is equal to (2 * NumberOfProcessors) + 1. For example, on a server running Exchange Server That has two processors, the optimal value for ScanningThreads is 5.

    Note

    If hyper-threading is enabled, the value for NumberOfProcessors will be double the number of physical processors. It is recommended that you check with your antivirus software manufacturer to determine whether physical or logical processors should be used in this formula.

Important

This article contains information about editing the registry. Before you edit the registry, make sure you understand how to restore the registry if a problem occurs. For information about how to restore the registry, view the "Restore the Registry" Help topic in Regedit.exe or Regedt32.exe.

To increase the thread count

  1. Open a registry editor, such as Regedit.exe or Regedt32.exe.

  2. Navigate to: HKLM\System\CurrentControlSet\Services\MSExchangeIS\VirusScan

  3. In the right pane, double-click ScanningThreads.

  4. Enter the value returned from the previous formula.

  5. Close Registry Editor, and then restart the Microsoft Exchange Information Store service for the change to take effect.

Before you edit the registry, and for information about how to edit the registry, see the Microsoft Knowledge Base article 256986, "Description of the Microsoft Windows Registry" (https://go.microsoft.com/fwlink/?linkid=3052&kbid=256986).

  • Review the articles in the For More Information section of this document.

For More Information

For more information about virus-scanning programs that are typically used with Microsoft Exchange Server 2003, see the Microsoft Knowledge Base article 823166, "Overview of Exchange Server 2003 and antivirus software" (https://go.microsoft.com/fwlink/?LinkId=3052&kbid=823166).

For more information about virus-scanning programs that are typically used with Microsoft Exchange 2000 Server, see the Knowledge Base article 328841, "Exchange and antivirus software" (https://go.microsoft.com/fwlink/?LinkId=3052&kbid=328841).

For more information about Exchange Server performance, see the "Performance and Scalability Guide for Exchange Server 2003" (https://go.microsoft.com/fwlink/?LinkId=47576).

For more information about how to troubleshoot Exchange Server performance issues, see "Troubleshooting Microsoft Exchange Server Performance" (https://go.microsoft.com/fwlink/?LinkId=47588).

For more information about how to troubleshoot information store performance, see Microsoft Knowledge Base article 257725, "XADM: How to Collect Diagnostic Data for Information Store Troubleshooting" (https://go.microsoft.com/fwlink/?LinkId=3052&kbid=257725).