<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.6000.16640" name=GENERATOR></HEAD>
<BODY>
<DIV dir=ltr align=left><SPAN class=813184322-03032009><FONT face=Arial 
color=#0000ff size=2>Matt,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=813184322-03032009><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=813184322-03032009><FONT face=Arial 
color=#0000ff size=2>Are you doing native evaluation?&nbsp; We found a 
case&nbsp;where Mondrian was doing non-native evaluation based on how the MDX 
was structured which had a huge impact on performance.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=813184322-03032009><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=813184322-03032009><FONT face=Arial 
color=#0000ff size=2>Check to see&nbsp;whether the crossjoin&nbsp;is being 
pushed down natively to the database.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=813184322-03032009><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=813184322-03032009><FONT face=Arial 
color=#0000ff size=2>-Peter</FONT></SPAN></DIV><BR>
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> mondrian-bounces@pentaho.org 
[mailto:mondrian-bounces@pentaho.org] <B>On Behalf Of </B>Matt 
Campbell<BR><B>Sent:</B> Tuesday, March 03, 2009 4:25 PM<BR><B>To:</B> Mondrian 
developer mailing list<BR><B>Subject:</B> [Mondrian] Re: Performance 
degradation<BR></FONT><BR></DIV>
<DIV></DIV>I was able to reproduce this issue with a very simple Foodmart query. 
&nbsp;The following runs in under 2 seconds with changelist 10915. &nbsp;It now 
takes around 55 seconds with 12403. &nbsp; From the little investigation I've 
done it looks like most time is spent in executeStripe().
<DIV><BR></DIV>
<DIV>It's interesting, if I eliminate either part of the set the time drops back 
down to ~2 seconds--i.e. eliminate either the GENERATE() or the 
{Product.DEFAULTMEMBER, [Yearly Income].DEFAULTMEMBER}. &nbsp;If they are <SPAN 
class=Apple-style-span style="FONT-STYLE: italic">both</SPAN>&nbsp;present, 
though, it takes 55 seconds.<BR>
<DIV><BR></DIV>
<DIV>SELECT
<DIV>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
&nbsp;{GENERATE({[Product].[Product Name].MEMBERS},</DIV>
<DIV>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; CROSSJOIN( 
{([Product].CURRENTMEMBER)},</DIV>
<DIV>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {[Yearly Income].[Yearly 
Income].MEMBERS}), ALL),</DIV>
<DIV>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
&nbsp;{([Product].DEFAULTMEMBER,[Yearly Income].DEFAULTMEMBER)} &nbsp; 
&nbsp;&nbsp;</DIV>
<DIV>}</DIV>
<DIV>&nbsp;ON AXIS(0)</DIV>
<DIV>FROM</DIV>
<DIV>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;[Sales] ;</DIV>
<DIV><BR></DIV>
<DIV>
<P class=MsoNormal><BR></P>
<DIV class=gmail_quote>On Tue, Mar 3, 2009 at 11:03 AM, Matt Campbell <SPAN 
dir=ltr>&lt;<A href="mailto:mkambol@gmail.com">mkambol@gmail.com</A>&gt;</SPAN> 
wrote:<BR>
<BLOCKQUOTE class=gmail_quote 
style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid"><BR>
  <DIV>During a run of a performance test we noticed a fairly significant 
  increase in query time for queries involving very large numbers of cells. 
  &nbsp;We actually hadn't run this particular test in nearly a year, so the 
  comparison is between changelist 10915 and 12403.</DIV>
  <DIV><BR></DIV>
  <DIV>The query <SPAN style="FONT-STYLE: italic">is</SPAN>&nbsp;ridiculously 
  large--nearly 200K tuples, intersected with 12 measures. &nbsp;With 10915 this 
  query ran in a little over an hour. &nbsp;With 12403 it runs for over 5 
  hours.</DIV>
  <DIV><BR></DIV>
  <DIV>I haven't investigated much yet. &nbsp;I'm going to create simple 
  Foodmart query to try to reproduce, and then I'll try to narrow down where the 
  bottleneck is. &nbsp;I wanted to post, though, in case anyone has thoughts 
  about this.</DIV>
  <DIV><BR></DIV>
  <DIV><BR></DIV></BLOCKQUOTE></DIV><BR></DIV></DIV></DIV></BODY></HTML>