FIX: An MDX query stops responding if the result for an axis contains more than 64,000 members

Article translations Article translations
Article ID: 839854 - View products that this article applies to.
Bug #: 14278 (Plato7x)
Expand all | Collapse all

On This Page


When you run a Multidimensional Expression (MDX) query, the query stops responding if the result for an axis of the query contains more than 64,000 members. The process that hosts the OLE DB provider for OLAP (Msolap80.dll) consumes 100 percent of the CPU usage, and the query returns no results.


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

The English version of this hotfix has the file attributes (or later) 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

Date         Time   Version            Size    File name
08-Apr-2004  16:32  8.0.931.0         221,760  Msmdcb80.dll     
08-Apr-2004  16:32       4,063,808  Msmddo80.dll     
08-Apr-2004  16:32  8.0.931.0       1,032,768  Msmdgd80.dll     
08-Apr-2004  16:32  8.0.931.0         172,608  Msmdpump.dll     
08-Apr-2004  16:32       9,638,468  Msmdsgn80.dll    
08-Apr-2004  16:32  8.0.931.0       1,835,588  Msmdsrv.exe      
08-Apr-2004  16:32  8.0.931.0       2,081,360  Msolap80.dll     
08-Apr-2004  02:09  8.0.931.0         213,068  Msolap80.rll

SQL Server 2000 Analysis Services 64 bit

Date         Time   Version            Size    File name
08-Apr-2004  18:24  8.0.931.0       5,492,736  Msmdcb80.dll
08-Apr-2004  18:24  8.0.931.0       5,801,984  Msmdgd80.dll
08-Apr-2004  18:24  8.0.931.0       5,130,752  Msmdpump.dll
08-Apr-2004  18:24  8.0.931.0       5,993,472  Msmdsrv.exe
08-Apr-2004  18:24  8.0.931.0       6,671,360  Msolap80.dll
08-Apr-2004  16:44  8.0.931.0         201,216  Msolap80.rll
Note Because of file dependencies, the most recent hotfix or feature that contains these files may also contain additional files.


Microsoft has confirmed that this is a problem 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.


This hotfix includes a fix that addressed an issue that causes the corruption of dimensions when a Lazy Aggregation processing thread is executed after it processes dimensions that are used in virtual dimensions. Because of that fix, if you incrementally process a virtual dimension, a lazy aggregation processing thread executes. While the lazy aggregation thread executes, the aggregations for that dimension are deleted from each partition.

The lazy aggregation thread executes as a low priority background thread and rebuilds the aggregations for the dimension in each partition. While the lazy aggregation thread executes to rebuild the aggregations, MDX query execution may be significantly slower. The degradation in query performance occurs because of the lack of aggregations. The lack of aggregators causes the server to read values from the leaf level of each partition.

After the lazy aggregation thread finishes rebuilding the aggregations for each partition, you no longer see the degradation in query performance. The query performance degradation during lazy aggregation may be unacceptable in certain situations, such as in high-demand cubes in enterprise applications. If applying this hotfix causes unacceptable query performance degradation, we recommend that you consider the following alternatives during lazy aggregation:
  • Set the DSOCommitMode registry value to DSOCommitModeNonLazyIndexing. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:
    325289 FIX: New functionality for incremental update of changing dimensions
    This option can increase memory and disk usage on the Analysis server. Memory usage increases because processing the affected cubes requires additional memory for the processing buffer to recalculate the cube aggregates. Disk usage increases to approximately double the cumulative size of all affected cubes because the new copies of the data and aggregates are created and because the original data is kept for current user queries. Also, the total elapsed time to complete transactions may be considerably longer than with the conventional lazy aggregation process.
  • Set the Virtual property and the Changing property of any virtual dimensions to False.

    Note If you change these properties, you must fully re-process any cubes that use the changed dimension.
For additional information, 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


Article ID: 839854 - Last Review: November 21, 2006 - Revision: 4.2
  • Microsoft SQL Server 2000 Analysis Services
kbqfe kbsqlserv2000presp4fix kbfix kbbug kbhotfixserver KB839854

Give Feedback


Contact us for more help

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