FIX: Query performance decreases when you run a query against an Analysis Services server that has dynamic security implemented for many users

Article translations Article translations
Article ID: 872783 - View products that this article applies to.
BUG#: 14370 (Plato7x)


Important This article contains information about modifying the registry. Before you modify the registry, make sure to back it up and make sure that you understand how to restore the registry if a problem occurs. For information about how to back up, restore, and edit the registry, click the following article number to view the article in the Microsoft Knowledge Base:
256986 Description of the Microsoft Windows Registry
Expand all | Collapse all

On This Page

Article contents

SUMMARY

This article describes the following about this hotfix release:
  • The issues that are fixed by this hotfix package.
  • The prerequisites for installing the hotfix package.
  • Whether you must restart your computer after you install the hotfix package.
  • Whether the hotfix package is replaced by any other hotfix package.
  • Whether you must make any registry changes.
  • The files that are contained in the hotfix package.

SYMPTOMS

When you run a query against a Microsoft SQL Server 2000 Analysis Services server that is secured by dynamic security, you may notice that the query performance decreases.

This problem occurs if the following conditions are true:
  • The dynamic security is implemented for many users. This number is 2000 or more.

    Note The name of the users will be stored in a user table that is typically named Users.
  • Many connections have been made to the Analysis Services server by the users.
For a list of previous hotfixes, see the "Microsoft SQL Server 2000 post-Service Pack 3 or Microsoft SQL Server 2000 post-Service Pack 3a hotfixes" section in the following Microsoft Knowledge Base article:
290211 How to obtain the most recent SQL Server 2000 service pack

CAUSE

When a user queries a cube that is secured by dynamic security, Analysis Services creates a replica dimension for each user who connects to the Analysis Services server and who is verified by the dynamic security. The replica dimensions are not unloaded until a the following conditions are true:
  • A dimension or a cube that contains the dimension is processed.
  • Analysis Services is restarted.
  • The role membership is changed.
Additionally, the replica dimensions are not unloaded even when the user disconnects. Therefore, when many connections have been made to the Analysis Services server by the users, a delay occurs in validating the new users who are connecting to the Analysis Services server. This behavior occurs because Analysis Services must loop through all the replica dimensions to determine whether a new replica dimension must be created.

RESOLUTION

Service pack information

To resolve this problem, obtain the latest service pack for Microsoft SQL Server 2000. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
290211 How to obtain the latest SQL Server 2000 service pack

Hotfix information

Prerequisites

This hotfix requires Microsoft SQL Server 2000 Analysis Services Service Pack 3 (SP3).

For additional information about how to obtain SQL Server 2000 Analysis Services SP3, click the following article number to view the article in the Microsoft Knowledge Base:
290211 How to obtain the most recent SQL Server 2000 Service Pack

Restart information

You do not have to restart your computer after you apply this hotfix.

Registry information

Warning If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.

After you install this fix, follow these steps:
  1. Add the
    DimSecFlavor
    DWORD registry value to the following registry subkey:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OLAP Server\CurrentVersion
  2. Set the value of the
    DimSecFlavor
    DWORD registry value to 1. If you set the value of the
    DimSecFlavor
    DWORD registry value to 1, Analysis Services does not look for an existing replica dimension in the memory to find and verify a role. Analysis Services finds and verifies a role by matching the user id and the role id combination. This will improve the query performance when dynamic security is implemented for many users and when the allowed sets or the denied sets for dynamic security are complex.

Hotfix file information

This hotfix contains only those files that are required to correct the issues that this article lists. This hotfix may not contain all the files that you must have to fully update a product to the latest build.

The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.

SQL Server 2000 Analysis Services 32-Bit

This hotfix build is designed for a server that is running SQL Server 2000 Analysis Services 32-bit:
   Date         Time   Version    Size       File name
   -------------------------------------------------------
   06-Apr-2004  07:56                18,800  Msmd.h
   15-Jul-2004  13:22  8.0.960.0    221,760  Msmdcb80.dll     
   15-Jul-2004  13:48  8.0.0.960  4,063,808  Msmddo80.dll     
   15-Jul-2004  13:15  8.0.960.0  1,036,864  Msmdgd80.dll     
   15-Jul-2004  13:09  8.0.960.0    172,608  Msmdpump.dll     
   15-Jul-2004  12:47  8.0.960.0    446,524  Msmdsgn.rll
   15-Jul-2004  13:57  8.0.0.960  9,642,564  Msmdsgn80.dll    
   15-Jul-2004  13:10  8.0.960.0  1,839,684  Msmdsrv.exe      
   15-Jul-2004  13:33  8.0.960.0  2,085,456  Msolap80.dll     
   15-Jul-2004  12:28  8.0.960.0    213,068  Msolap80.rll

SQL Server 2000 Analysis Services 64-Bit

This hotfix build is designed for a server that is running SQL Server 2000 Analysis Services 64-bit:
   Date         Time   Version    Size       File name     Platform
   ----------------------------------------------------------------
   06-Apr-2004  07:56                18,800  Msmd.h
   15-Jul-2004  15:24  8.0.960.0  5,507,584  Msmdcb80.dll  IA-64
   15-Jul-2004  15:24  8.0.960.0  5,816,320  Msmdgd80.dll  IA-64
   15-Jul-2004  15:24  8.0.960.0  5,146,624  Msmdpump.dll  IA-64
   15-Jul-2004  15:24  8.0.960.0  6,010,368  Msmdsrv.exe   IA-64
   15-Jul-2004  15:24  8.0.960.0  6,686,208  Msolap80.dll  IA-64
   15-Jul-2004  14:11  8.0.960.0    201,216  Msolap80.rll


Note Because of file dependencies, the most recent hotfix that contains these files may also contain additional files.

STATUS

Microsoft has confirmed that this is a bug in the Microsoft products that are listed in the "Applies to" section.

This problem was first corrected in Microsoft SQL Server 2000 Service Pack 4.

MORE INFORMATION

For more information about how dynamic security works and replica dimensions, see the following white paper in the Microsoft TechNet Web site:
Microsoft SQL Server 2000 Analysis Services Performance Guide
http://technet.microsoft.com/en-us/library/cc917609.aspx
For additional information about the naming schema for Microsoft SQL Server updates, click the following article number to view the article in the Microsoft Knowledge Base:
822499 New naming schema for Microsoft SQL Server software update packages
For additional information about the terminology that Microsoft uses when correcting software after it is released, click the following article number to view the article in the Microsoft Knowledge Base:
824684 Description of the standard terminology that is used to describe Microsoft software updates

Properties

Article ID: 872783 - Last Review: November 21, 2006 - Revision: 2.4
APPLIES TO
  • Microsoft SQL Server 2000 Analysis Services
Keywords: 
kbsqlserv2000presp4fix kbregistry kbperformance kbsecurity kbfix kbbug kbhotfixserver kbqfe KB872783

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com