[Mondrian] RolapNativeSet NPE

Hilario Fernandes hilario.fernandes at cortex-intelligence.com
Thu Mar 27 11:11:18 EDT 2014


Thank you very much for the explanation. I did a quick test with it in mind
and the difference is noticeable. Same query that took 10s to execute with
ExpandNonNative=true went up to 17s when i turned it to false.


On Thu, Mar 27, 2014 at 1:28 PM, Matt Campbell <mcampbell at pentaho.com>wrote:

>
> ExpandNonNative increases the number of cases where push down logic can be
> used.  It does this by evaluating sub-expressions that cannot be easily
> optimized within a crossjoin, and then inlining the resulting sets into a
> new cross join argument.  This can help in many scenarios.  For example,
> with your query the Filter expression within a crossjoin arg caused the
> optimization logic to fail, but Mondrian then expanded out that filter.
>  Had it actually returned any tuples, those tuples would have been used in
> constraining the tuple set used for the outer crossjoin.  If [Fuel].members
> in your query had 10s of thousands of members that extra optimization could
> have a big impact on query time.
>
> Whether to have it on or off depends a lot on your workload, dimension
> cardinality, and model.  I'd suggest running some tests with typical
> queries using both settings to see how much it will impact you.
>
>
>
> ________________________________________
> From: mondrian-bounces at pentaho.org [mondrian-bounces at pentaho.org] On
> Behalf Of Hilario Fernandes [hilario.fernandes at cortex-intelligence.com]
> Sent: Thursday, March 27, 2014 8:59 AM
> To: Mondrian developer mailing list
> Subject: Re: [Mondrian] RolapNativeSet NPE
>
> Yes Matt, i do have it enabled. These are my native setttings:
>
> mondrian.native.crossjoin.enable=true
> mondrian.native.filter.enable=true
> mondrian.native.nonempty.enable=true
> mondrian.native.topcount.enable=true
> mondrian.native.ExpandNonNative=true
> mondrian.native.EnableNativeRegexpFilter=true
>
> I followed some indications on
> http://infocenter.pentaho.com/help/index.jsp?topic=%2Fperformance_tuning_guide%2Fconcept_mondrian_properties.htmlto set it to true. I supposed with those i'd have the optimal performance.
>
> I can confirm that the error is gone when setting
>  mondrian.native.ExpandNonNative=false.
>
> Is there any major hit in performance for having it to false with large
> datasets, or does any of the other options depend on this one to work?
>
> Thank you for opening the issue, and for your attention.
>
>
>
>
>
> On Thu, Mar 27, 2014 at 12:39 PM, Matt Campbell <mcampbell at pentaho.com
> <mailto:mcampbell at pentaho.com>> wrote:
>
>
> Hi Hilario-
> I was able to reproduce what you were seeing by setting
> ExpandNonNative=true.  Can you confirm you have that property set as well?
>  (I believe that's the default setting in biserver)
>
> I've logged MONDRIAN-1964 for the issue.
>
> -matt
>
> ________________________________________
> From: mondrian-bounces at pentaho.org<mailto:mondrian-bounces at pentaho.org> [
> mondrian-bounces at pentaho.org<mailto:mondrian-bounces at pentaho.org>] On
> Behalf Of Hilario Fernandes [hilario.fernandes at cortex-intelligence.com
> <mailto:hilario.fernandes at cortex-intelligence.com>]
> Sent: Thursday, March 27, 2014 6:39 AM
> To: Mondrian developer mailing list
> Subject: Re: [Mondrian] RolapNativeSet NPE
>
> Thank you for your reply.
>
> I've tryed version 3.6.2 and 3.6.5 with the same results.
>
> Should i fill in a bug report? Under which project should i do it? I've
> opened bugs in the wrong place in the past, just want to make sure i put it
> on the right place this time!
>
>
> On Wed, Mar 26, 2014 at 6:33 PM, Luc Boudreau <lucboudreau at gmail.com
> <mailto:lucboudreau at gmail.com><mailto:lucboudreau at gmail.com<mailto:
> lucboudreau at gmail.com>>> wrote:
> Looks like a bug.
>
> Which version is this? I vaguely remember seeing this before.
>
> Luc
>
>
> On Wed, Mar 26, 2014 at 2:30 PM, Hilario Fernandes <
> hilario.fernandes at cortex-intelligence.com<mailto:
> hilario.fernandes at cortex-intelligence.com><mailto:
> hilario.fernandes at cortex-intelligence.com<mailto:
> hilario.fernandes at cortex-intelligence.com>>> wrote:
> Hi everyone,
>
> I'm implementing a system that creates mdx queries and passes these to
> Mondrian to be executed. During my tests I have found a problem when using
> mondrian.native.crossjoin.enable=true.
>
> If I try to do a query such as this:
>
> SELECT
> NON EMPTY {[Measures].[Price_SUM]} ON COLUMNS,
> NON EMPTY CrossJoin({Filter({[Brand].[Brand].Members},
> [Brand].CurrentMember.Name MATCHES '(?i).*zzzzz.*')},
> {[Fuel].[Fuel].Members}) ON ROWS
> FROM [Cars]
>
>
> Where we have a CrossJoin of a Filter over Brand members with the fuel
> members. The problem is that whenever the first argument of the CrossJoin
> is a filter that returns empty (no values matched) i get a
> NullPointerException from mondrian.
>
>
> java.lang.NullPointerException
> at
> mondrian.rolap.RolapNativeSet$SetEvaluator.execute(RolapNativeSet.java:186)
> at
> mondrian.olap.fun.CrossJoinFunDef$CrossJoinIterCalc.evaluateIterable(CrossJoinFunDef.java:177)
> at mondrian.rolap.RolapResult.executeAxis(RolapResult.java:875)
> at mondrian.rolap.RolapResult.evalLoad(RolapResult.java:700)
> at mondrian.rolap.RolapResult.loadMembers(RolapResult.java:656)
> at mondrian.rolap.RolapResult.<init>(RolapResult.java:288)
> at mondrian.rolap.RolapConnection.executeInternal(RolapConnection.java:671)
> at mondrian.rolap.RolapConnection.access$000(RolapConnection.java:51)
> at mondrian.rolap.RolapConnection$1.call(RolapConnection.java:622)
> at mondrian.rolap.RolapConnection$1.call(RolapConnection.java:621)
>
>
> Anyone has an idea of the problem?
>
> --
> Hilario Fernandes
>
> _______________________________________________
> Mondrian mailing list
> Mondrian at pentaho.org<mailto:Mondrian at pentaho.org><mailto:
> Mondrian at pentaho.org<mailto:Mondrian at pentaho.org>>
> http://lists.pentaho.org/mailman/listinfo/mondrian
>
>
>
> _______________________________________________
> Mondrian mailing list
> Mondrian at pentaho.org<mailto:Mondrian at pentaho.org><mailto:
> Mondrian at pentaho.org<mailto:Mondrian at pentaho.org>>
> http://lists.pentaho.org/mailman/listinfo/mondrian
>
>
>
>
> --
> Hilario Fernandes
> _______________________________________________
> Mondrian mailing list
> Mondrian at pentaho.org<mailto:Mondrian at pentaho.org>
> http://lists.pentaho.org/mailman/listinfo/mondrian
>
>
>
> --
> Hilario Fernandes
> _______________________________________________
> Mondrian mailing list
> Mondrian at pentaho.org
> http://lists.pentaho.org/mailman/listinfo/mondrian
>



-- 
Hilario Fernandes
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.pentaho.org/pipermail/mondrian/attachments/20140327/895de93d/attachment.html 


More information about the Mondrian mailing list