[Mondrian] Concurrency bottleneck in RolapEvaluatorRoot

Luc Boudreau lucboudreau at gmail.com
Wed Nov 20 13:28:29 EST 2013


Computing the context into which shared dimensions are evaluated is a
costly operation, so this code attempts to trigger the generation of the
unique name up front when it creates a new evaluator context. Think how
virtual cubes w/ shared dimensions w/ aggregate tables and such need to
fall into place and the names need to match, even if things are renamed
across shares and virtualization.

Why this happens in RolapEvaluator? I'd guess that you have to wait until
the evaluation phase to figure out the correct name of the hierarchy.



On Wed, Nov 20, 2013 at 12:23 PM, Pedro Vale <pedro.vale at webdetails.pt>wrote:

> Hi.
>
> Found this comment on RolapEvaluatorRoot while analyzing query performance:
>
>
> https://github.com/pentaho/mondrian/blob/master/src/main/mondrian/rolap/RolapEvaluatorRoot.java#L104
>
>
>             // This fragment is a concurrency bottleneck, so use a cache of
>             // hierarchy usages.
>             final HierarchyUsage hierarchyUsage =
> cube.getFirstUsage(hierarchy);
>             if (hierarchyUsage != null) {
>                 if (defaultMember instanceof RolapMemberBase) {
>                 ((RolapMemberBase) defaultMember).makeUniqueName(
>                     hierarchyUsage);
>                 }
>             }
>
>
> I was directed to this class because my logs showed that makeUniqueName is
> being repeatedly called while running the query, even though the member
> already has its unique name assigned.
>
> Does anyone know why this is a concurrency bottleneck?
>
>
> thanks,
>
>   Pedro Vale
> Webdetails Dev Lead
>
> http://www.webdetails.pt
>
>
>
>
>
>
>
> _______________________________________________
> Mondrian mailing list
> Mondrian at pentaho.org
> http://lists.pentaho.org/mailman/listinfo/mondrian
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.pentaho.org/pipermail/mondrian/attachments/20131120/22bd6a8a/attachment-0001.html 


More information about the Mondrian mailing list