[Mondrian] question on "circular" MDX

michael bienstein mbienstein at yahoo.fr
Sun Feb 4 04:56:01 EST 2007


WITH SET ... is a named set.  Named sets are evaluated in the default context - no slicer at all.

Michael

----- Message d'origine ----
De : John V. Sichi <jsichi at gmail.com>
À : mondrian at pentaho.org
Envoyé le : Dimanche, 4 Février 2007, 3h50mn 51s
Objet : [Mondrian] question on "circular" MDX

If I run the query below with native crossjoins enabled, it comes back 
with an answer.  But if I run it with 
mondrian.native.crossjoin.enable=false, it fails with a stack overflow. 
  There's clearly a bug, in that the behavior should be the same 
regardless of the implementation.  And if it should fail, it would be 
nice to fail with a validation error regarding the circularity (rather 
than a stack overflow).

The cycle in the non-native case is as follows.  The calculated members 
in the slicer depend on named set CJ, the result of some 
NonEmptyCrossJoins.  But those NECJ's in turn depend on the slicer for 
deciding non-emptiness of each candidate tuple.

There's some further problem with the calculated member manipulation in 
that it requires two calculated members to fail; with just one 
calculated member in the slicer, it succeeds regardless of whether 
native crossjoin is used.  Unless I'm misunderstanding the cause of the 
problem, if it's going to fail in one case, it should fail in the other.

Any opinions on the correct behavior?

with
set BM_PRODUCT as {[Product].[All Products].[Drink]}
set BM_EDU as [Education Level].[Education Level].Members
set BM_GENDER as {[Gender].[Gender].[M]}
set CJ as NonEmptyCrossJoin(BM_GENDER,NonEmptyCrossJoin(BM_EDU,BM_PRODUCT))
set GM_PRODUCT as Generate(CJ, {[Product].CurrentMember})
set GM_EDU as Generate(CJ, {[Education Level].CurrentMember})
set GM_GENDER as Generate(CJ, {[Gender].CurrentMember})
set GM_MEASURE as {[Measures].[Unit Sales]}
member [Education Level].FILTER1 as Aggregate(GM_EDU)
member [Gender].FILTER2 as Aggregate(GM_GENDER)
select
GM_PRODUCT on rows,
GM_MEASURE on columns
from [Sales]
where ([Education Level].FILTER1, [Gender].FILTER2);

JVS
_______________________________________________
Mondrian mailing list
Mondrian at pentaho.org
http://lists.pentaho.org/mailman/listinfo/mondrian







	

	
		
___________________________________________________________________________ 
Découvrez une nouvelle façon d'obtenir des réponses à toutes vos questions ! 
Profitez des connaissances, des opinions et des expériences des internautes sur Yahoo! Questions/Réponses 
http://fr.answers.yahoo.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.pentaho.org/pipermail/mondrian/attachments/20070204/1d142c19/attachment.html 


More information about the Mondrian mailing list