症状
假定您使用 SQL Server 2008 R2 Analysis Services。当您在 Analysis Services 中执行维度上的处理操作和服务处于内存压力之下时,维度数据可能已损坏。
注意:此问题发生在相对较少的竞态条件不是无远弗届。发生此问题时,您可能会遇到ProcessUpdate故障或不正确的尺寸关系。
下面是一些条件和行为观察以解决此问题︰
-
Analysis Services 内存使用率超过处理操作期间为服务配置较高的内存限制。这将导致 Analysis Services 大力清理内存页。
-
任何错误或消息日志处理期间,发生了问题,并将在维度处理不会失败。它完成并写入维度文件中损坏的数据。
-
问题是最有可能表现为不正确的维度属性关系新添加的维度成员。例如︰产品维度中的成员可能会出现在错误类别或子类别。
-
这种损坏可能会泄露自己的另一种方法是包含限制性强属性关系的维度上后续ProcessUpdate 。将在维度处理可能因以下错误消息︰
'刚性特性之间的关系不能更改维度的增量处理过程中
注意:此错误也会发生一些合理的原因,如基础数据源中的更改。但是,如果尚未更改的表或视图作为维度的源中的基础数据,这可能是错误的原因。
-
当服务器处于内存压力之下,但清洗器线程在维度处理过程完成之前为新添加的维度成员退出数据页时不总是会出现问题。这是维度处理线程和内存清理程序线程在 Analysis Services 服务之间的相对较少的竞争条件。
-
安装此修复程序后将不会再出现问题,但受影响的对象需要重新处理以解决此问题。
-
如果服务器未处于内存压力之下受影响维度上的ProcessUpdate将更正损坏所致的所有灵活的关系这个问题。具有一个或多个受影响维度的刚性特性的关系,处理将失败与上面提到的错误。
-
要解决该问题所包含的维度的刚性关系更改服务器上受影响维度特性关系,然后再运行ProcessUpdate。属性关系然后会改回为刚性,将重新生成使用该维度的度量值组的索引。
-
注意:应用此修补程序后,SQL Server 版本将 10.50.6548.0。
解决方案
修补程序信息
可以从 Microsoft 获得受支持的修复程序。但是,此修补程序用于解决本文中描述的问题。仅对出现这一特定问题的系统应用此修补程序。
如果此修复程序可供下载,则此知识库文章顶部的"修补程序下载可用"部分。如果未显示此部分,提交到 Microsoft 客户服务和支持的请求,以获取此修复程序。
注意:如果出现其他问题或需要任何故障诊断时,您可能需要创建单独的服务请求。通常的支持费用将应用于其他支持问题和事项,不符合此特定的修补程序。有关 Microsoft 客户服务和支持电话号码或创建单独的服务请求的完整列表,请转到下面的 Microsoft 网站︰
http://support.microsoft.com/contactus/?ws=support注意:"修补程序下载可用"窗体显示获取此修复程序的语言。如果您没有看到您的语言,这是因为一个修补程序没有那种语言。
重新启动信息
您不必应用此修复程序后重新启动计算机。
注册表信息
您不必在应用此修补程序后,更改注册表。
修补程序替换信息
此修补程序不替换任何其他修补程序。
状态
Microsoft 已经确认这是“适用于”一节中列出的 Microsoft 产品中的问题。