Microsoft KB Archive/834844

= FIX: The UserName function returns NULL or an empty string in an MDX query or in an MDX expression =

Article ID: 834844

Article Last Modified on 11/21/2006

-

APPLIES TO


 * Microsoft SQL Server 2000 Analysis Services
 * Microsoft SQL Server 2000 Analysis Services

-



Bug #: 14309 (Plato7x)



Microsoft SQL Server 2000 fixes are distributed as one downloadable file. Because the fixes are cumulative, each new release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2000 fix release.



SYMPTOMS
When you use the UserName function in a Multidimensional Expressions (MDX) query or in an MDX expression, the value that is returned may be NULL or an empty string, instead of the expected domain and username. This problem occurs when both of the following conditions are true:
 * You connect to Microsoft SQL Server 2000 Analysis Services through HTTP.
 * The Analysis Services service and the Microsoft Internet Information Services (IIS) service that hosts the Msolap.asp page reside on different servers.



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 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
Date        Time   Version             Size   File name --- 08-Apr-2004 15:55  8.0.931.0         221,760  Msmdcb80.dll 08-Apr-2004 15:56  8.0.0.931       4,063,808  Msmddo80.dll 08-Apr-2004 15:48  8.0.931.0       1,032,768  Msmdgd80.dll 08-Apr-2004 15:44  8.0.931.0         172,608  Msmdpump.dll 08-Apr-2004 16:08  8.0.0.931       9,638,468  Msmdsgn80.dll 08-Apr-2004 16:30  8.0.931.0       1,835,588  Msmdsrv.exe 08-Apr-2004 16:10  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.



STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the &quot;Applies to&quot; section. This problem was first corrected in Microsoft SQL Server 2000 Service Pack 4.



MORE INFORMATION
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 more 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 more 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

Keywords: kbbug kbfix kbqfe kbsqlserv2000presp4fix kbhotfixserver KB834844

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.