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

This article has been archived. It is offered "as is" and will no longer be updated.
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
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.
back to the top
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
back to the top
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.

back to the top
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
back to the top

Restart information

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

back to the top

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.back to the top
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.

back to the top
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:
824684Description of the standard terminology that is used to describe Microsoft software updates
back to the top
OLAP QFE Hot Fix refresh 825804 dimension security
Properties

Article ID: 872783 - Last Review: 01/17/2015 08:44:30 - Revision: 2.4

Microsoft SQL Server 2000 Analysis Services

  • kbnosurvey kbarchive kbsqlserv2000presp4fix kbregistry kbperformance kbsecurity kbfix kbbug kbhotfixserver kbqfe KB872783
Feedback
ERROR: at System.Diagnostics.Process.Kill() at Microsoft.Support.SEOInfrastructureService.PhantomJS.PhantomJSRunner.WaitForExit(Process process, Int32 waitTime, StringBuilder dataBuilder, Boolean isTotalProcessTimeout)