Consider the following scenario:
- On a computer that is running the x64-based version of Windows Server 2008 or the Itanium-based version of Windows Server 2008, you install the x64-based version Microsoft SQL Server 2008 Analysis Services or the Itanium-based version of Microsoft SQL Server 2008 Analysis Services.
- You have a very big dimension.
- You process the dimension by using the Process Update option.
In this scenario, you may receive the following error messages randomly:
File system error: While attempting to read information from disk, a read error occurred for physical file: <filename>, logical file: . Errors in the OLAP storage engine: An error occurred while the '<attribute>' attribute of the '<dimension>' dimension from the '<database>' database was being processed.
This problem occurs because a race condition exists where a thread reads a temporary file (.tmp file) that is being written by another thread of Lazy Writer.
The fix for this issue was first released in Cumulative Update 3 for SQL Server 2008 Service Pack 1. For more information about this cumulative update package, click the following article number to view the article in the Microsoft Knowledge Base:
Cumulative update package 3 for SQL Server 2008 Service Pack 1
Because the builds are cumulative, each new fix release contains all the hotfixes and all the security fixes that were included with the previous SQL Server 2008 fix release. Microsoft recommends that you consider applying the most recent fix release that contains this hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:
The SQL Server 2008 builds that were released after SQL Server 2008 Service Pack 1 was released
Microsoft SQL Server 2008 hotfixes are created for specific SQL Server service packs. You must apply a SQL Server 2008 Service Pack 1 hotfix to an installation of SQL Server 2008 Service Pack 1. By default, any hotfix that is provided in a SQL Server service pack is included in the next SQL Server service pack.
To work around this problem, use one of the following methods.Method 1
In the affected dimension, remove referential integrity violations, such as duplicate keys and null keys. Method 2
Avoid multipass processing of the dimension.
Analysis Services engine uses multipass processing if it cannot fit all related attributes of a dimension in memory when it processes the dimension. Therefore, if you add more memory to the system, or you use large attributes that have less related attributes, multipass processing can be avoided.
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
For more information about the Incremental Servicing Model for SQL Server, click the following article number to view the article in the Microsoft Knowledge Base:
An Incremental Servicing Model is available from the SQL Server team to deliver hotfixes for reported problems
For more information about the naming schema for SQL Server updates, click the following article number to view the article in the Microsoft Knowledge Base:
New naming schema for Microsoft SQL Server software update packages
For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:
Description of the standard terminology that is used to describe Microsoft software updates