Microsoft distributes Microsoft SQL Server 2008 Service Pack 1(SP1), or SQL Server 2008 R2 fixes 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 2008 Service Pack 1(SP1) or SQL Server 2008 R2 fix release.
Symptoms
Consider the following scenario:
-
You have a Multidimensional Expressions (MDX) query that meets the following conditions in Microsoft SQL Server 2008 Analysis Services (SSAS) 2008 or in Microsoft SQL Server 2008 R2 Analysis Services (SSAS) 2008 R2:
-
The query uses the CROSSJOIN function.
-
The expression of the query has more than two argument sets that are composed of tuples from different attribute hierarchies in the same dimension.
-
These sets are separated by another set that is composed of tuples from another dimension.
-
The theoretical result set for the CROSSJOIN function is usually more than 4,294,967,296 tuples.
For example, you have an MDX query that contains the following:WITH SET S AS CROSSJOIN([Product].[Large Photo].[Large Photo], [Customer].[Customer].[Customer], [Product].[Product].[Product])
SELECT {} ON 0, S.ITEM(1) ON 1 FROM [Adventureworks]
-
-
You try to run the query.
In this scenario, the query does not run. Additionally, you receive the following error message:
The expression contains a function that cannot operate on a set with more than 4,294,967,296 tuples.
Note This type of MDX query may be automatically generated by an Excel Pivot table.
Resolution
Cumulative update information
SQL Server 2008 SP1
The fix for this issue was first released in Cumulative Update 11. For more information about how to obtain this cumulative update package for SQL Server 2008 Service Pack 1 (SP1), click the following article number to view the article in the Microsoft Knowledge Base:
2413738 Cumulative update package 11 for SQL Server 2008 Service Pack 1 Note 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 Service Pack 1 (SP1) fix release. We recommend 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:
970365 The SQL Server 2008 builds that were released after SQL Server 2008 Service Pack 1 was released
SQL Server 2008 R2
The fix for this issue was first released in Cumulative Update 5. For more information about how to obtain this cumulative update package for SQL Server 2008 R2, click the following article number to view the article in the Microsoft Knowledge Base:
2438347 Cumulative Update package 5 for SQL Server 2008 R2 Note 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 R2 fix release. We recommend 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:
981356 The SQL Server 2008 R2 builds that were released after SQL Server 2008 R2 was released
SQL Server 2008 Service Pack 2
The fix for this issue was first released in Cumulative Update 2 for SQL Server 2008 Service Pack 2. For more information about this cumulative update package, click the following article number to view the article in the Microsoft Knowledge Base:
2467239 Cumulative update package 2 for SQL Server 2008 Service Pack 2Note 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:
2402659 The SQL Server 2008 builds that were released after SQL Server 2008 Service Pack 2 was released Microsoft SQL Server 2008 hotfixes are created for specific SQL Server service packs. You must apply a SQL Server 2008 Service Pack 2 hotfix to an installation of SQL Server 2008 Service Pack 2. By default, any hotfix that is provided in a SQL Server service pack is included in the next SQL Server service pack.
Workaround
To work around this issue, use an expression that has two adjacent attributes from the same dimension in the query. For example, the MDX query contains the following:
WITH SET S AS CROSSJOIN([Product].[Large Photo].[Large Photo], [Product].[Product].[Product], [Customer].[Customer].[Customer])
SELECT {} ON 0, S.ITEM(1) ON 1 FROM [Adventureworks]
Status
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.