BUG: Infinite Recursion Error with Parent-Child Dimension and Custom Member (311528)



The information in this article applies to:

  • Microsoft SQL Server 2000 Analysis Services

This article was previously published under Q311528
BUG #: 9731, 12582, 12675 (Plato7x)

SYMPTOMS

When you view data associated with a custom member of a parent-child dimension, the cell values may display as "#Err". When you examine the cell properties of any of the custom members, you receive the following error message:
Infinite recursion detected during execution of calculated member.

CAUSE

This behavior is due to a stack overflow, which may occur when viewing custom members from a parent-child dimension with 15 or more levels where members at the lowest level contain a custom member formula that references a member at a higher level.

WORKAROUND

Use the Image Configuration Utility (ImageCfg.exe) that ships with the Microsoft Windows 2000 Resource Kit to increase the stack size that is allocated to Msmdsrv.exe.

WARNING: The Image Configuration Utility impacts the allocation of operating system memory. This tool may reduce the amount of memory available for critical operating system functions. Refer to your application documentation before using this tool.

NOTE: Some software application manufacturers configure their applications to use application memory tuning. Refer to your application documentation before using this tool.

STATUS

Microsoft has confirmed that this is a problem in SQL Server OLAP Services version 8.0.

MORE INFORMATION

Steps to Reproduce Behavior

  1. Open Analysis Manager and select the FoodMart 2000 sample.
  2. Edit the Account shared dimension.
  3. Write-enable the dimension by setting the Write-Enable advanced property to true.
  4. Enable Custom Members and select a new column named Custom_Members.
  5. In Microsoft Access, open FoodMart 2000.mdb and then open the Account Table.
  6. Add the following values:
    account_idaccount_parentaccount_descriptionaccount_typeaccount_rollup
    6000TestIncome+
    60016000Test 1Income+
    60026001Test 2Income+
    60036002Test 3Income+
    60046003Test 4Income+
    60056004Test 5Income+
    60066005Test 6Income+
    60076006Test 7Income+
    60086007Test 8Income+
    60096008Test 9Income+
    60106009Test 10Income+
    60116010Test 11Income+
    60126011Test 12Income+
    60136012Test 13Income+
    60146013Test 14Income+
    60156014Test 15Income+

  7. Incrementally process the Account dimension.
  8. Open the Budget cube for editing.
  9. In the Cube Editor, right-click the Account dimension and click Browse. Drill down to member Test 15 and enter the following custom member formula "[ACCOUNT].&[5000]".
  10. Save and browse the cube.
  11. Examine the cell properties of any of the Test members.

Modification Type:MinorLast Reviewed:7/16/2004
Keywords:kbBug KB311528