KB4089623 - CORRECÇÃO: Falta de memória ocorre e a consulta falha quando executa a consulta MDX com a opção NON EMPTY no SSAS

Aplica-se a
SQL Server 2016 Service Pack 1 SQL Server 2016 Business Intelligence SQL Server 2014 Service Pack 2 - duplicate (do not use) SQL Server 2014 Business Intelligence - duplicate (do not use) SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Standard on Windows

Sintomas

Quando executa uma consulta MDX (Multidimensional Expressions) gerada pelo tableau com a opção NON EMPTY e Query-Scoped membro calculado na segmentação de dados no Microsoft SQL Server Analysis Services (SSAS), ocorre memória esgotada e a consulta falha.

Resolução

Este problema foi corrigido nas seguintes atualizações cumulativas para SQL Server:

Atualização cumulativa 7 para SQL Server 2017

Atualização cumulativa 8 para SQL Server 2016 SP1

Atualização cumulativa 11 para SQL Server 2014 SP2

Acerca das atualizações cumulativas para SQL Server:

Cada nova atualização cumulativa para SQL Server contém todos os hotfixes e todas as correções de segurança que foram incluídas com a atualização cumulativa anterior. Consulte as atualizações cumulativas mais recentes para SQL Server:

Atualização cumulativa mais recente para o SQL Server 201 7

Atualização cumulativa mais recente para o SQL Server 2016

Atualização cumulativa mais recente para o SQL Server 2014

Mais informações

Segue-se a consulta de exemplo para este problema:


WITH 
MEMBER [Measures].[Test] AS 
CASE 
WHEN 
IsEmpty([Date].[Date].CurrentMember.MemberValue)
OR 
[Date].[Date].CurrentMember.MemberValue = NULL 
THEN NULL
ELSE 
Cdate([Date].[Date].CurrentMember.MemberValue)
END 
SELECT 
[Measures].[Internet Order Count] DIMENSION PROPERTIES [MEMBER_UNIQUE_NAME],[MEMBER_CAPTION] ON COLUMNS
,NON EMPTY [Date].[Fiscal].[Fiscal Year].ALLMEMBERS DIMENSION PROPERTIES [MEMBER_UNIQUE_NAME], [MEMBER_CAPTION] ON ROWS
FROM [Adventure Works]
WHERE 
StripCalculatedMembers
(
CrossJoin
(
{[Product].[Product Categories].[Subcategory].&[26]}
,Filter
(
[Date].[Date].[Date].ALLMEMBERS
,
[Measures].[Test] >= Cdate(40369) AND [Measures].[Test] <= Cdate(42735)
)
)
);

Status

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Referências

Saiba mais sobre a terminologia que a Microsoft usa para descrever atualizações de software.