Microsoft distributes Microsoft SQL Server 2012 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 2012 fix release.
Symptoms
When you run a Multidimensional Expressions (MDX) query in an instance of Microsoft SQL Server 2012 Analysis Services (SSAS 2012), the query might fail, and you receive the following error message:
Internal error: An unexpected error occurred (file 'pfiallocator.cpp', line 804, function 'PFMemoryHolder::RegisterMemoryHolder').
Execution complete
Additionally, a minidump file is generated in the SSAS 2012 log folder.
Notes
-
This issue typically occurs if a subcube that is generated has an arbitrary shape set that is below the grain, and that involves a many-to-many or reference dimension relationship.
-
An arbitrary shape set is a set that cannot be easily expressed as a crossjoin set of two sets of attribute members. For example, "{(2004, USA), (2001, Canada)}" is an arbitrary shape set.
Cause
This issue occurs because the SSAS 2012 Storage Engine tries to read a .det file that contains the metadata for the database when you run the query. However, because a path in the metadata is NULL, this causes the issue that is described in the "Symptoms" section.
Resolution
Cumulative update information
SQL Server 2012
The fix for this issue was first released in Cumulative Update 2 for SQL Server 2012. For more information about how to obtain this cumulative update package for SQL Server, click the following article number to view the article in the Microsoft Knowledge Base:
2703275 Cumulative update package 2 for SQL Server 2012Note 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 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:
2692828 The SQL Server 2012 builds that were released after SQL Server 2012 was released
Workaround
To work around this issue, change the MDX query to not use an arbitrary shape set.
Status
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.