Mondrian Community,

Currently, Grouping Sets are not being used in Mondrian when native
evaluation is enabled. Since native evaluation limits the members
during tuple evaluation, the batches that are created for cell
evaluation have a constraint to limit to only those tuples that were non
empty. The constraints cause the Grouping Set code to be unable to
rollup those batches into a single query. However, if the original
query actually had a level.members rather than a specific set of
members, it would be valid to allow those batches to be grouped into a
Grouping Set. I've come up with a way to get around this limitation.
Mondrian could store in the evaluation cache those levels that were used
as level.members during native evalution. Then when deciding if batches
can be rolled up, that list of levels can be taken into account. There
is one kind of ugly part of this solution. The eval cache is cleared
between tuple and cell evaluation. So, the levels cache would be lost.
There would need to be a special case for the new key so that it does
not get cleared. Does anyone have any thoughts on this solution? Any
other ideas how Mondrian can share state from tuple evaluation into cell
evaluation? Thanks.



* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * *
Kurtis Walker
Programmer Analyst Sr

Thomson Reuters

734-913-3034
kurtis.walker (AT) thomsonreuters (DOT) com
thomsonreuters.com <http://thomsonreuters.com>


_______________________________________________
Mondrian mailing list
Mondrian (AT) pentaho (DOT) org
http://lists.pentaho.org/mailman/listinfo/mondrian