Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

RS 2005 Standard Edition may hang on systems with multiple CPUs


Symptoms

On a multi-core, multi-CPU system, SQL Server 2005 Reporting Services Standard Edition instance (RS 2005) may intermittently hang.

↑ Back to the top


Cause

The problem occurs because the Standard Edition of SQL Server 2005 Reporting services does not correctly detect the number of physical CPUs and logical CPUs that are present on the system. 

For example on a machine with 4 dual-core CPUs, RS 2005  may incorrectly detect 8 physical CPUs instead of 4 Physical CPUs (8 logical CPUs). As a consequence, RS 2005 will enforce the standard SKU limitation (4 CPUs for a RS 2005 standard edition) using SetProcessAffinityMask API leading to possible hangs of the Reporting services (RS) application pool.

↑ Back to the top


Resolution

To avoid this issue, you can set the number of CPUs available for the RS application pool in IIS. The goal is to set it to the maximum number of CPUs at the application pool level to avoid RS having to try and change this dynamically.

For example on a system with 4 dual-cores, set the application pool to use only 4 logical CPUs. When you do this, RS will not call SetProcessAffinityMask API and hence the hang condition can be avoided.

To configure processor affinity for your application pool use one of the following methods depending on the edition of IIS server in your environment:

  • IIS 6:  Refer to the following topic on Technet: Set Processor Affinity (IIS 6.0)
  • IIS7:  On IIS 7 use the following procedure:
    1. Launch IIS manager by running Inetmgr.
    2. Go to Advanced Settings of the RS application pool and do the following under the CPU section:
        • Set the Processor Affinity Enabled option to True
        • Set the value of Processor Affinity Mask to 15. (This forces the application pool to use only on the first 4 processors on the system.)

↑ Back to the top


More Information

Hyperthreading is correctly detected by RS.

↑ Back to the top


Keywords: kb

↑ Back to the top

Article Info
Article ID : 2460783
Revision : 1
Created on : 1/7/2017
Published on : 12/24/2010
Exists online : False
Views : 357