<p dir="ltr">Thanks man!</p>
<div class="gmail_quote">On May 2, 2016 18:10, &quot;Adam Brusselback&quot; &lt;<a href="mailto:adambrusselback@gmail.com">adambrusselback@gmail.com</a>&gt; wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Done: <a href="http://jira.pentaho.com/browse/MONDRIAN-2487" target="_blank">http://jira.pentaho.com/browse/MONDRIAN-2487</a></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, May 2, 2016 at 1:03 PM, Pedro Alves <span dir="ltr">&lt;<a href="mailto:pmgalves@gmail.com" target="_blank">pmgalves@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p dir="ltr">That&#39;s what we use for triage. Can you create it and link the pull request?</p><div><div>
<div class="gmail_quote">On May 2, 2016 18:00, &quot;Adam Brusselback&quot; &lt;<a href="mailto:adambrusselback@gmail.com" target="_blank">adambrusselback@gmail.com</a>&gt; wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I did not create one, and didn&#39;t see one in searching for the problem, so i&#39;d wager &quot;no&quot;.</div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, May 2, 2016 at 12:12 PM, Pedro Alves <span dir="ltr">&lt;<a href="mailto:pmgalves@gmail.com" target="_blank">pmgalves@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p dir="ltr">Is there a jira on this?</p>
<div class="gmail_quote"><div><div>On May 2, 2016 17:09, &quot;Adam Brusselback&quot; &lt;<a href="mailto:adambrusselback@gmail.com" target="_blank">adambrusselback@gmail.com</a>&gt; wrote:<br type="attribution"></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div><div dir="ltr">Alright, since I got no feedback, I fixed it how I thought best, and have tested it for the past week or so. No issues found so far. I submitted it back to the fork that Saiku keeps of Mondrian, but I thought i&#39;d link to it here so you guys can get it fixed upstream.<div><br></div><div>Here is the pull request:</div><div><a href="https://github.com/OSBI/mondrian/commit/3744676b7a3388d99825f427cb7e3b530ee86cbe" target="_blank">https://github.com/OSBI/mondrian/commit/3744676b7a3388d99825f427cb7e3b530ee86cbe</a><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Apr 26, 2016 at 2:28 PM, Adam Brusselback <span dir="ltr">&lt;<a href="mailto:adambrusselback@gmail.com" target="_blank">adambrusselback@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">So, sorry. I was a bit tired when I sent this last night. I should add a bit more info so it&#39;s possible to look into.<div><br></div><div>Here is the mdx for the first picture:</div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div><div>WITH</div></div><div><div>SET [~COLUMNS] AS</div></div><div><div>    {[Time].[Fiscal].[Fiscal Year].Members}</div></div><div><div>SET [~ROWS] AS</div></div><div><div>    {[Direct-Indirect].[Direct-Indirect].[Direct-Indirect].Members}</div></div><div><div>SELECT</div></div><div><div>CrossJoin([~COLUMNS], {[Measures].[Net Sales]}) ON COLUMNS,</div></div><div><div>NON EMPTY [~ROWS] ON ROWS</div></div><div><div>FROM [Pinnacle - Sale]</div></div></blockquote><div><br></div><div>mdx for the second picture:</div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div><div>WITH</div></div><div><div>SET [~COLUMNS] AS</div></div><div><div>    {[Time].[Fiscal].[Fiscal Year].Members}</div></div><div><div>SET [~ROWS] AS</div></div><div><div>    {[Direct-Indirect].[Direct-Indirect].[Direct-Indirect].Members}</div></div><div><div>SELECT</div></div><div><div>NON EMPTY CrossJoin([~COLUMNS], {[Measures].[Net Sales]}) ON COLUMNS,</div></div><div><div>NON EMPTY [~ROWS] ON ROWS</div></div><div><div>FROM [Pinnacle - Sale]</div></div></blockquote><div><br></div><div>mdx for the third picture:</div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><div><div>WITH</div></div><div><div>SET [~COLUMNS] AS</div></div><div><div>    {[Direct-Indirect].[Direct-Indirect].[Direct-Indirect].Members}</div></div><div><div>SET [~ROWS] AS</div></div><div><div>    {[Time].[Fiscal].[Fiscal Year].Members}</div></div><div><div>SELECT</div></div><div><div>NON EMPTY CrossJoin([~COLUMNS], {[Measures].[Net Sales]}) ON COLUMNS,</div></div><div><div>NON EMPTY [~ROWS] ON ROWS</div></div><div><div>FROM [Pinnacle - Sale]</div></div></blockquote><div><br></div><div><br></div><div>I have been trying to debug this myself all today, and made a little progress...</div><div><br></div><div>My issue lies in the RolapMemberBase equals overrride.</div><div><br></div><div>It doesn&#39;t take into account different keys for the same member.  So I have a  [Time].[Fiscal].[2015] with a key of (1, 2015), and when it goes through the RolapEvaluator.same method (called in setContext) it sees them as the same thing and doesn&#39;t do a replace in the currentMember list when my next member with a key of (2, 2015) comes in.<br></div><div><br></div><div>So I am not sure where the fix really needs to go for this, if it&#39;s in the RolapMemberBase.equals method (don&#39;t know how far reaching that could be), or in the RolapEvaluator.same method.  I could use some direction on this, as I do need it fixed for my own use, but would much rather do it in a way that could be submitted back to the project.</div></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Apr 26, 2016 at 3:33 AM, Adam Brusselback <span dir="ltr">&lt;<a href="mailto:adambrusselback@gmail.com" target="_blank">adambrusselback@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hey all, I seem to have found a bug in the non empty cross join optimization.<div>Mondrian version: 4.3.0.1</div><div><div><br></div><div>I have a data warehouse that is multi-tenant, and has a date dimension with different fiscal information per client (all tables segregated by a client_sk).  Each client has their own fiscal calendar, so it&#39;s necessary to separate them out like that.</div><div><br></div><div>The issue seems to be, when  doing the cross join non empty with my fiscal year as a column, if the first result that comes back for that member is empty, even though it is for a totally different client, it will throw out that whole member.</div><div><br></div><div>If the fiscal year is in the row, and another member in the column, the query returns as expected.</div><div><br></div><div>I&#39;ll attach a few example query images:</div><div>Example of why it seems to be removing the members (not first in the list):</div><div><img src="cid:ii_154517b1899776f2" alt="Inline image 5" style="margin-right:0px" width="1162" height="365"><br></div><div><div style="display:inline-block"><br></div></div><div>Here is my problem query:</div><div><img src="cid:ii_15451789f6b5f492" alt="Inline image 2" width="444" height="472"><br></div><div><br></div><div>Here it is with the column/row flipped:</div><div><img src="cid:ii_15451796ef6c1b66" alt="Inline image 4" width="455" height="475"><br></div></div></div>
</blockquote></div><br></div>
</div></div></blockquote></div><br></div>
<br></div></div>_______________________________________________<br>
Mondrian mailing list<br>
<a href="mailto:Mondrian@pentaho.org" target="_blank">Mondrian@pentaho.org</a><br>
<a href="http://lists.pentaho.org/mailman/listinfo/mondrian" rel="noreferrer" target="_blank">http://lists.pentaho.org/mailman/listinfo/mondrian</a><br>
<br></blockquote></div>
<br>_______________________________________________<br>
Mondrian mailing list<br>
<a href="mailto:Mondrian@pentaho.org" target="_blank">Mondrian@pentaho.org</a><br>
<a href="http://lists.pentaho.org/mailman/listinfo/mondrian" rel="noreferrer" target="_blank">http://lists.pentaho.org/mailman/listinfo/mondrian</a><br>
<br></blockquote></div><br></div>
<br>_______________________________________________<br>
Mondrian mailing list<br>
<a href="mailto:Mondrian@pentaho.org" target="_blank">Mondrian@pentaho.org</a><br>
<a href="http://lists.pentaho.org/mailman/listinfo/mondrian" rel="noreferrer" target="_blank">http://lists.pentaho.org/mailman/listinfo/mondrian</a><br>
<br></blockquote></div>
</div></div><br>_______________________________________________<br>
Mondrian mailing list<br>
<a href="mailto:Mondrian@pentaho.org" target="_blank">Mondrian@pentaho.org</a><br>
<a href="http://lists.pentaho.org/mailman/listinfo/mondrian" rel="noreferrer" target="_blank">http://lists.pentaho.org/mailman/listinfo/mondrian</a><br>
<br></blockquote></div><br></div>
<br>_______________________________________________<br>
Mondrian mailing list<br>
<a href="mailto:Mondrian@pentaho.org">Mondrian@pentaho.org</a><br>
<a href="http://lists.pentaho.org/mailman/listinfo/mondrian" rel="noreferrer" target="_blank">http://lists.pentaho.org/mailman/listinfo/mondrian</a><br>
<br></blockquote></div>