java.lang.NullPointerException

Pentaho BI Platform Tracking | Martijn van den Broek | 4 years ago
tip
Your exception is missing from the Samebug knowledge base.
Here are the best solutions we found on the Internet.
Click on the to mark the helpful solution and get rewards for you help.
  1. 0

    Attached is a test method which fails with a NullPointerException. We have reduced the test to the point where this error happens. Test method in AccessControlTest.java : public void testVirtualCubeNonEmptyCrossJoin() { TestContext testContext = TestContext.instance().create( null, "<Cube name=\"SalesTest\">" + " <Table name=\"sales_fact_1997\" />" + " <Dimension name=\"Promotions\" foreignKey=\"promotion_id\">" + " <Hierarchy hasAll=\"true\" allMemberName=\"All Promotions\" primaryKey=\"promotion_id\" defaultMember=\"[All Promotions]\">" + " <Table name=\"promotion\"/>" + " <Level name=\"Promotion Name\" column=\"promotion_name\" uniqueMembers=\"true\"/>" + " </Hierarchy>" + " </Dimension>" + " <Dimension name=\"Gender\" foreignKey=\"customer_id\">" + " <Hierarchy hasAll=\"true\" allMemberName=\"All Gender\" primaryKey=\"customer_id\">" + " <Table name=\"customer\"/>" + " <Level name=\"Gender\" column=\"gender\" uniqueMembers=\"true\"/>" + " </Hierarchy>" + " </Dimension>" + " <Measure name=\"SalesTest Unit Sales\" column=\"unit_sales\" aggregator=\"sum\" formatString=\"Standard\"/>" + "</Cube>", "<VirtualCube name=\"VirtualSalesTest\">" + " <CubeUsages>" + " <CubeUsage cubeName=\"SalesTest\" />" + " </CubeUsages>" + " <VirtualCubeDimension cubeName=\"SalesTest\" name=\"Promotions\" />" + " <VirtualCubeDimension cubeName=\"SalesTest\" name=\"Gender\" />" + " <VirtualCubeMeasure cubeName=\"SalesTest\" name=\"[Measures].[SalesTest Unit Sales]\" />" + "</VirtualCube>", null, null, "<Role name=\"AccountRole1\">" + " <SchemaGrant access=\"none\">" + " <CubeGrant cube=\"VirtualSalesTest\" access=\"all\">" + " <HierarchyGrant hierarchy=\"[Promotions]\" access=\"custom\" rollupPolicy=\"partial\">" + " <MemberGrant member=\"[Promotions].[Coupon Spectacular]\" access=\"all\"/>" + " </HierarchyGrant>" + " </CubeGrant>" + " </SchemaGrant>" + "</Role>").withRole("AccountRole1"); testContext.assertQueryReturns( "select non empty crossjoin([Promotions].Members, [Gender].Members) on 0 from [VirtualSalesTest]", "FIXME"); } Stacktrace: mondrian.olap.MondrianException: Mondrian Error:Internal error: Error while executing query [select NON EMPTY Crossjoin([Promotions].Members, [Gender].Members) ON COLUMNS from [VirtualSalesTest] ] at mondrian.resource.MondrianResource$_Def0.ex(MondrianResource.java:972) at mondrian.olap.Util.newInternal(Util.java:2414) at mondrian.olap.Util.newError(Util.java:2430) at mondrian.rolap.RolapConnection.executeInternal(RolapConnection.java:706) 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:620) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:722) Caused by: java.lang.NullPointerException at mondrian.rolap.SqlConstraintUtils.joinLevelTableToFactTable(SqlConstraintUtils.java:684) at mondrian.rolap.SqlConstraintUtils.addRoleAccessConstraints(SqlConstraintUtils.java:299) at mondrian.rolap.SqlConstraintUtils.addContextConstraint(SqlConstraintUtils.java:215) at mondrian.rolap.SqlContextConstraint.addConstraint(SqlContextConstraint.java:308) at mondrian.rolap.SqlTupleReader.generateSelectForLevels(SqlTupleReader.java:923) at mondrian.rolap.SqlTupleReader.makeLevelMembersSql(SqlTupleReader.java:784) at mondrian.rolap.SqlTupleReader.prepareTuples(SqlTupleReader.java:390) at mondrian.rolap.SqlTupleReader.readMembers(SqlTupleReader.java:506) at mondrian.rolap.SqlMemberSource.getMembersInLevel(SqlMemberSource.java:508) at mondrian.rolap.SmartMemberReader.getMembersInLevel(SmartMemberReader.java:146) at mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.getMembersInLevel(RolapCubeHierarchy.java:727) at mondrian.rolap.RestrictedMemberReader.getMembersInLevel(RestrictedMemberReader.java:241) at mondrian.rolap.SubstitutingMemberReader.getMembersInLevel(SubstitutingMemberReader.java:185) at mondrian.rolap.RolapSchemaReader.getLevelMembers(RolapSchemaReader.java:547) at mondrian.olap.DelegatingSchemaReader.getLevelMembers(DelegatingSchemaReader.java:242) at mondrian.olap.fun.FunUtil.getNonEmptyLevelMembers(FunUtil.java:2195) at mondrian.olap.fun.FunUtil.hierarchyMembers(FunUtil.java:2231) at mondrian.olap.fun.BuiltinFunTable$27$1.evaluateList(BuiltinFunTable.java:957) at mondrian.calc.impl.AbstractListCalc.evaluateIterable(AbstractListCalc.java:71) at mondrian.olap.fun.CrossJoinFunDef$CrossJoinIterCalc.evaluateIterable(CrossJoinFunDef.java:185) 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) ... 8 more java.lang.NullPointerException at mondrian.rolap.SqlConstraintUtils.joinLevelTableToFactTable(SqlConstraintUtils.java:684) at mondrian.rolap.SqlConstraintUtils.addRoleAccessConstraints(SqlConstraintUtils.java:299) at mondrian.rolap.SqlConstraintUtils.addContextConstraint(SqlConstraintUtils.java:215) at mondrian.rolap.SqlContextConstraint.addConstraint(SqlContextConstraint.java:308) at mondrian.rolap.SqlTupleReader.generateSelectForLevels(SqlTupleReader.java:923) at mondrian.rolap.SqlTupleReader.makeLevelMembersSql(SqlTupleReader.java:784) at mondrian.rolap.SqlTupleReader.prepareTuples(SqlTupleReader.java:390) at mondrian.rolap.SqlTupleReader.readMembers(SqlTupleReader.java:506) at mondrian.rolap.SqlMemberSource.getMembersInLevel(SqlMemberSource.java:508) at mondrian.rolap.SmartMemberReader.getMembersInLevel(SmartMemberReader.java:146) at mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.getMembersInLevel(RolapCubeHierarchy.java:727) at mondrian.rolap.RestrictedMemberReader.getMembersInLevel(RestrictedMemberReader.java:241) at mondrian.rolap.SubstitutingMemberReader.getMembersInLevel(SubstitutingMemberReader.java:185) at mondrian.rolap.RolapSchemaReader.getLevelMembers(RolapSchemaReader.java:547) at mondrian.olap.DelegatingSchemaReader.getLevelMembers(DelegatingSchemaReader.java:242) at mondrian.olap.fun.FunUtil.getNonEmptyLevelMembers(FunUtil.java:2195) at mondrian.olap.fun.FunUtil.hierarchyMembers(FunUtil.java:2231) at mondrian.olap.fun.BuiltinFunTable$27$1.evaluateList(BuiltinFunTable.java:957) at mondrian.calc.impl.AbstractListCalc.evaluateIterable(AbstractListCalc.java:71) at mondrian.olap.fun.CrossJoinFunDef$CrossJoinIterCalc.evaluateIterable(CrossJoinFunDef.java:185) 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:620) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:722) Failure Count : 0

    Pentaho BI Platform Tracking | 4 years ago | Martijn van den Broek
    java.lang.NullPointerException
  2. 0

    Attached is a test method which fails with a NullPointerException. We have reduced the test to the point where this error happens. Test method in AccessControlTest.java : public void testVirtualCubeNonEmptyCrossJoin() { TestContext testContext = TestContext.instance().create( null, "<Cube name=\"SalesTest\">" + " <Table name=\"sales_fact_1997\" />" + " <Dimension name=\"Promotions\" foreignKey=\"promotion_id\">" + " <Hierarchy hasAll=\"true\" allMemberName=\"All Promotions\" primaryKey=\"promotion_id\" defaultMember=\"[All Promotions]\">" + " <Table name=\"promotion\"/>" + " <Level name=\"Promotion Name\" column=\"promotion_name\" uniqueMembers=\"true\"/>" + " </Hierarchy>" + " </Dimension>" + " <Dimension name=\"Gender\" foreignKey=\"customer_id\">" + " <Hierarchy hasAll=\"true\" allMemberName=\"All Gender\" primaryKey=\"customer_id\">" + " <Table name=\"customer\"/>" + " <Level name=\"Gender\" column=\"gender\" uniqueMembers=\"true\"/>" + " </Hierarchy>" + " </Dimension>" + " <Measure name=\"SalesTest Unit Sales\" column=\"unit_sales\" aggregator=\"sum\" formatString=\"Standard\"/>" + "</Cube>", "<VirtualCube name=\"VirtualSalesTest\">" + " <CubeUsages>" + " <CubeUsage cubeName=\"SalesTest\" />" + " </CubeUsages>" + " <VirtualCubeDimension cubeName=\"SalesTest\" name=\"Promotions\" />" + " <VirtualCubeDimension cubeName=\"SalesTest\" name=\"Gender\" />" + " <VirtualCubeMeasure cubeName=\"SalesTest\" name=\"[Measures].[SalesTest Unit Sales]\" />" + "</VirtualCube>", null, null, "<Role name=\"AccountRole1\">" + " <SchemaGrant access=\"none\">" + " <CubeGrant cube=\"VirtualSalesTest\" access=\"all\">" + " <HierarchyGrant hierarchy=\"[Promotions]\" access=\"custom\" rollupPolicy=\"partial\">" + " <MemberGrant member=\"[Promotions].[Coupon Spectacular]\" access=\"all\"/>" + " </HierarchyGrant>" + " </CubeGrant>" + " </SchemaGrant>" + "</Role>").withRole("AccountRole1"); testContext.assertQueryReturns( "select non empty crossjoin([Promotions].Members, [Gender].Members) on 0 from [VirtualSalesTest]", "FIXME"); } Stacktrace: mondrian.olap.MondrianException: Mondrian Error:Internal error: Error while executing query [select NON EMPTY Crossjoin([Promotions].Members, [Gender].Members) ON COLUMNS from [VirtualSalesTest] ] at mondrian.resource.MondrianResource$_Def0.ex(MondrianResource.java:972) at mondrian.olap.Util.newInternal(Util.java:2414) at mondrian.olap.Util.newError(Util.java:2430) at mondrian.rolap.RolapConnection.executeInternal(RolapConnection.java:706) 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:620) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:722) Caused by: java.lang.NullPointerException at mondrian.rolap.SqlConstraintUtils.joinLevelTableToFactTable(SqlConstraintUtils.java:684) at mondrian.rolap.SqlConstraintUtils.addRoleAccessConstraints(SqlConstraintUtils.java:299) at mondrian.rolap.SqlConstraintUtils.addContextConstraint(SqlConstraintUtils.java:215) at mondrian.rolap.SqlContextConstraint.addConstraint(SqlContextConstraint.java:308) at mondrian.rolap.SqlTupleReader.generateSelectForLevels(SqlTupleReader.java:923) at mondrian.rolap.SqlTupleReader.makeLevelMembersSql(SqlTupleReader.java:784) at mondrian.rolap.SqlTupleReader.prepareTuples(SqlTupleReader.java:390) at mondrian.rolap.SqlTupleReader.readMembers(SqlTupleReader.java:506) at mondrian.rolap.SqlMemberSource.getMembersInLevel(SqlMemberSource.java:508) at mondrian.rolap.SmartMemberReader.getMembersInLevel(SmartMemberReader.java:146) at mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.getMembersInLevel(RolapCubeHierarchy.java:727) at mondrian.rolap.RestrictedMemberReader.getMembersInLevel(RestrictedMemberReader.java:241) at mondrian.rolap.SubstitutingMemberReader.getMembersInLevel(SubstitutingMemberReader.java:185) at mondrian.rolap.RolapSchemaReader.getLevelMembers(RolapSchemaReader.java:547) at mondrian.olap.DelegatingSchemaReader.getLevelMembers(DelegatingSchemaReader.java:242) at mondrian.olap.fun.FunUtil.getNonEmptyLevelMembers(FunUtil.java:2195) at mondrian.olap.fun.FunUtil.hierarchyMembers(FunUtil.java:2231) at mondrian.olap.fun.BuiltinFunTable$27$1.evaluateList(BuiltinFunTable.java:957) at mondrian.calc.impl.AbstractListCalc.evaluateIterable(AbstractListCalc.java:71) at mondrian.olap.fun.CrossJoinFunDef$CrossJoinIterCalc.evaluateIterable(CrossJoinFunDef.java:185) 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) ... 8 more java.lang.NullPointerException at mondrian.rolap.SqlConstraintUtils.joinLevelTableToFactTable(SqlConstraintUtils.java:684) at mondrian.rolap.SqlConstraintUtils.addRoleAccessConstraints(SqlConstraintUtils.java:299) at mondrian.rolap.SqlConstraintUtils.addContextConstraint(SqlConstraintUtils.java:215) at mondrian.rolap.SqlContextConstraint.addConstraint(SqlContextConstraint.java:308) at mondrian.rolap.SqlTupleReader.generateSelectForLevels(SqlTupleReader.java:923) at mondrian.rolap.SqlTupleReader.makeLevelMembersSql(SqlTupleReader.java:784) at mondrian.rolap.SqlTupleReader.prepareTuples(SqlTupleReader.java:390) at mondrian.rolap.SqlTupleReader.readMembers(SqlTupleReader.java:506) at mondrian.rolap.SqlMemberSource.getMembersInLevel(SqlMemberSource.java:508) at mondrian.rolap.SmartMemberReader.getMembersInLevel(SmartMemberReader.java:146) at mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.getMembersInLevel(RolapCubeHierarchy.java:727) at mondrian.rolap.RestrictedMemberReader.getMembersInLevel(RestrictedMemberReader.java:241) at mondrian.rolap.SubstitutingMemberReader.getMembersInLevel(SubstitutingMemberReader.java:185) at mondrian.rolap.RolapSchemaReader.getLevelMembers(RolapSchemaReader.java:547) at mondrian.olap.DelegatingSchemaReader.getLevelMembers(DelegatingSchemaReader.java:242) at mondrian.olap.fun.FunUtil.getNonEmptyLevelMembers(FunUtil.java:2195) at mondrian.olap.fun.FunUtil.hierarchyMembers(FunUtil.java:2231) at mondrian.olap.fun.BuiltinFunTable$27$1.evaluateList(BuiltinFunTable.java:957) at mondrian.calc.impl.AbstractListCalc.evaluateIterable(AbstractListCalc.java:71) at mondrian.olap.fun.CrossJoinFunDef$CrossJoinIterCalc.evaluateIterable(CrossJoinFunDef.java:185) 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:620) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:722) Failure Count : 0

    Pentaho BI Platform Tracking | 4 years ago | Martijn van den Broek
    java.lang.NullPointerException
  3. 0

    Doing an EXTRACT on a set that was built from a cross-join or NonEmptyCrossJoin results in an error. Here is the SteelWheels schema used to replicate the issue: <Schema name="SteelWheels"> <Cube name="SteelWheelsSales" cache="true" enabled="true"> <Table name="ORDERFACT"> </Table> <Dimension foreignKey="CUSTOMERNUMBER" name="Markets"> <Hierarchy name="Markets" hasAll="true" allMemberName="All Markets" primaryKey="CUSTOMERNUMBER"> <Table name="CUSTOMER_W_TER"> </Table> <Level name="Territory" column="TERRITORY" nameColumn="TERRITORY" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never"> </Level> <Level name="Country" column="COUNTRY" nameColumn="COUNTRY" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never"> <Annotations> <Annotation name="Data.Role">Geography</Annotation> <Annotation name="Geo.Role">country</Annotation> </Annotations> </Level> <Level name="State Province" column="STATE" nameColumn="STATE" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never"> <Annotations> <Annotation name="Data.Role">Geography</Annotation> <Annotation name="Geo.Role">state</Annotation> <Annotation name="Geo.RequiredParents">country</Annotation> </Annotations> </Level> <Level name="City" column="CITY" nameColumn="CITY" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never"> <Annotations> <Annotation name="Data.Role">Geography</Annotation> <Annotation name="Geo.Role">city</Annotation> <Annotation name="Geo.RequiredParents">country,state</Annotation> </Annotations> </Level> </Hierarchy> </Dimension> <Dimension foreignKey="CUSTOMERNUMBER" name="Customers"> <Hierarchy hasAll="true" allMemberName="All Customers" primaryKey="CUSTOMERNUMBER"> <Table name="CUSTOMER_W_TER"> </Table> <Level name="Customer" column="CUSTOMERNAME" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never"> <Property name="Customer Number" column="CUSTOMERNUMBER" type="Numeric"/> <Property name="Contact First Name" column="CONTACTFIRSTNAME" type="String"/> <Property name="Contact Last Name" column="CONTACTLASTNAME" type="String"/> <Property name="Phone" column="PHONE" type="String"/> <Property name="Address" column="ADDRESSLINE1" type="String"/> <Property name="Credit Limit" column="CREDITLIMIT" type="Numeric"/> </Level> </Hierarchy> </Dimension> <Dimension foreignKey="PRODUCTCODE" name="Product"> <Hierarchy name="" hasAll="true" allMemberName="All Products" primaryKey="PRODUCTCODE" primaryKeyTable="PRODUCTS" caption=""> <Table name="PRODUCTS"> </Table> <Level name="Line" table="PRODUCTS" column="PRODUCTLINE" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never"> </Level> <Level name="Vendor" table="PRODUCTS" column="PRODUCTVENDOR" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never"> </Level> <Level name="Product" table="PRODUCTS" column="PRODUCTNAME" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never"> <Property name="Code" column="PRODUCTCODE" type="String"/> <Property name="Vendor" column="PRODUCTVENDOR" type="String"/> <Property name="Description" column="PRODUCTDESCRIPTION" type="String"/> </Level> </Hierarchy> </Dimension> <Dimension type="TimeDimension" foreignKey="TIME_ID" name="Time"> <Hierarchy hasAll="true" allMemberName="All Years" primaryKey="TIME_ID"> <Table name="DIM_TIME"> </Table> <Level name="Years" column="YEAR_ID" type="String" uniqueMembers="true" levelType="TimeYears" hideMemberIf="Never"> <Annotations> <Annotation name="AnalyzerDateFormat">[yyyy]</Annotation> </Annotations> </Level> <Level name="Quarters" column="QTR_NAME" ordinalColumn="QTR_ID" type="String" uniqueMembers="false" levelType="TimeQuarters" hideMemberIf="Never"> <Annotations> <Annotation name="AnalyzerDateFormat">[yyyy].['QTR'q]</Annotation> </Annotations> </Level> <Level name="Months" column="MONTH_NAME" ordinalColumn="MONTH_ID" type="String" uniqueMembers="false" levelType="TimeMonths" hideMemberIf="Never"> <Annotations> <Annotation name="AnalyzerDateFormat">[yyyy].['QTR'q].[MMM]</Annotation> </Annotations> </Level> </Hierarchy> </Dimension> <Dimension foreignKey="STATUS" name="Order Status"> <Hierarchy hasAll="true" allMemberName="All Status Types" primaryKey="STATUS"> <Level name="Type" column="STATUS" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never"> </Level> </Hierarchy> </Dimension> <Measure name="Quantity" column="QUANTITYORDERED" formatString="#,###" aggregator="sum"> <Annotations> <Annotation name="AnalyzerBusinessGroup">Measures</Annotation> </Annotations> </Measure> <Measure name="Sales" column="TOTALPRICE" formatString="#,###" aggregator="sum"> <Annotations> <Annotation name="AnalyzerBusinessGroup">Measures</Annotation> </Annotations> </Measure> </Cube> <Role name="CUBE_SCHEMA_ALL"> <SchemaGrant access="all" /> </Role> <Role name="CUBE_SALES_MINIMAL"> <SchemaGrant access="none"> <CubeGrant cube="SteelWheelsSales" access="all"> <HierarchyGrant hierarchy="[Markets.Markets]" access="none" /> </CubeGrant> </SchemaGrant> </Role> <Role name='DIM_MARKETAREA_*'> <SchemaGrant access='none'> <CubeGrant cube='SteelWheelsSales' access='none'> <HierarchyGrant hierarchy='[Markets.Markets]' access='all'/> </CubeGrant> </SchemaGrant> </Role> <Role name='DIM_MARKETAREA_MARKET_800'> <SchemaGrant access='none'> <CubeGrant cube='SteelWheelsSales' access='none'> <HierarchyGrant hierarchy='[Markets.Markets]' access='custom' rollupPolicy="partial" topLevel='[Markets.Markets].[Territory]'> <MemberGrant member='[Markets.Markets].[Territory].[APAC]' access='all' /> <!-- <MemberGrant member='[Markets.Markets].[Territory].[EMEA]' access='none' /> <MemberGrant member='[Markets.Markets].[Territory].[Japan]' access='none' /> <MemberGrant member='[Markets.Markets].[Territory].[NA]' access='none' /> --> </HierarchyGrant> </CubeGrant> </SchemaGrant> </Role> <Role name='DIM_MARKETAREA_MARKET_850'> <SchemaGrant access='none'> <CubeGrant cube='SteelWheelsSales' access='none'> <HierarchyGrant hierarchy='[Markets.Markets]' access='custom' rollupPolicy="partial" topLevel='[Markets.Markets].[Territory]'> <MemberGrant member='[Markets.Markets].[Territory].[EMEA]' access='all' /> </HierarchyGrant> </CubeGrant> </SchemaGrant> </Role> <Role name='DIM_MARKETAREA_MARKET_900'> <SchemaGrant access='none'> <CubeGrant cube='SteelWheelsSales' access='none'> <HierarchyGrant hierarchy='[Markets.Markets]' access='custom' rollupPolicy="partial" topLevel='[Markets.Markets].[Territory]'> <MemberGrant member='[Markets.Markets].[Territory].[Japan]' access='all' /> </HierarchyGrant> </CubeGrant> </SchemaGrant> </Role> <Role name='DIM_MARKETAREA_MARKET_100'> <SchemaGrant access='none'> <CubeGrant cube='SteelWheelsSales' access='none'> <HierarchyGrant hierarchy='[Markets.Markets]' access='custom' rollupPolicy="partial" topLevel='[Markets.Markets].[Territory]'> <MemberGrant member='[Markets.Markets].[Territory].[NA]' access='all' /> </HierarchyGrant> </CubeGrant> </SchemaGrant> </Role> </Schema> And, here is an example of a query that fails on the EXTRACT function: with set [Territories of Interest] as Extract( NonEmptyCrossJoin ( [Markets.Markets].[Territory].Members, [Product].[Line].Members ), [Markets.Markets] ) select [Time].[Years].[2005] * { [Measures].[Quantity], [Measures].[Sales] } ON COLUMNS, NON EMPTY [Territories of Interest] ON ROWS from [SteelWheelsSales] And here is the DEBUG log produced: 2012-09-26 13:57:54,070 DEBUG [mondrian.mdx] 15370: with set [Territories of Interest] as 'Extract(NonEmptyCrossJoin([Markets].[Territory].Members, [Product].[Line].Members), [Markets])' select ({[Time].[2005]} * {[Measures].[Quantity], [Measures].[Sales]}) ON COLUMNS, NON EMPTY [Territories of Interest] ON ROWS from [SteelWheelsSales] 2012-09-26 13:57:54,085 DEBUG [mondrian.sql] 5296: SqlTupleReader.readTuples [[Markets].[Country]]: executing sql [ select "CUSTOMER_W_TER"."TERRITORY" as "c0", "CUSTOMER_W_TER"."TERRITORY" as "c1", "CUSTOMER_W_TER"."COUNTRY" as "c2", "CUSTOMER_W_TER"."COUNTRY" as "c3" from "CUSTOMER_W_TER" as "CUSTOMER_W_TER" group by "CUSTOMER_W_TER"."TERRITORY", "CUSTOMER_W_TER"."COUNTRY" order by CASE WHEN "CUSTOMER_W_TER"."TERRITORY" IS NULL THEN 1 ELSE 0 END, "CUSTOMER_W_TER"."TERRITORY" ASC, CASE WHEN "CUSTOMER_W_TER"."COUNTRY" IS NULL THEN 1 ELSE 0 END, "CUSTOMER_W_TER"."COUNTRY" ASC] 2012-09-26 13:57:54,085 DEBUG [mondrian.sql] 5296: , exec 0 ms 2012-09-26 13:57:54,086 DEBUG [mondrian.sql] 5296: , exec+fetch 1 ms, 33 rows 2012-09-26 13:57:54,086 DEBUG [mondrian.sql] 5297: SqlTupleReader.readTuples [[Markets].[State Province]]: executing sql [ select "CUSTOMER_W_TER"."TERRITORY" as "c0", "CUSTOMER_W_TER"."TERRITORY" as "c1", "CUSTOMER_W_TER"."COUNTRY" as "c2", "CUSTOMER_W_TER"."COUNTRY" as "c3", "CUSTOMER_W_TER"."STATE" as "c4", "CUSTOMER_W_TER"."STATE" as "c5" from "CUSTOMER_W_TER" as "CUSTOMER_W_TER" group by "CUSTOMER_W_TER"."TERRITORY", "CUSTOMER_W_TER"."COUNTRY", "CUSTOMER_W_TER"."STATE" order by CASE WHEN "CUSTOMER_W_TER"."TERRITORY" IS NULL THEN 1 ELSE 0 END, "CUSTOMER_W_TER"."TERRITORY" ASC, CASE WHEN "CUSTOMER_W_TER"."COUNTRY" IS NULL THEN 1 ELSE 0 END, "CUSTOMER_W_TER"."COUNTRY" ASC, CASE WHEN "CUSTOMER_W_TER"."STATE" IS NULL THEN 1 ELSE 0 END, "CUSTOMER_W_TER"."STATE" ASC] 2012-09-26 13:57:54,087 DEBUG [mondrian.sql] 5297: , exec 0 ms 2012-09-26 13:57:54,087 DEBUG [mondrian.sql] 5297: , exec+fetch 0 ms, 45 rows 2012-09-26 13:57:54,088 DEBUG [mondrian.mdx] 15370: exec: 18 ms 2012-09-26 13:57:54,092 DEBUG [mondrian.mdx] 15372: with set [Territories of Interest] as 'Extract(NonEmptyCrossJoin([Markets].[Territory].Members, [Product].[Line].Members), [Markets])' select ({[Time].[2005]} * {[Measures].[Quantity], [Measures].[Sales]}) ON COLUMNS, NON EMPTY [Territories of Interest] ON ROWS from [SteelWheelsSales] 2012-09-26 13:57:54,093 DEBUG [mondrian.mdx] 15372: exec: 1 ms 2012-09-26 13:57:54,093 ERROR [com.tonbeller.wcf.component.RendererTag] trouble rendering tableb214fcc5-0803-11e2-a9f7-550baa93f4c4 com.tonbeller.jpivot.olap.model.OlapException: mondrian.olap.MondrianException: Mondrian Error:Internal error: Error while executing query [with set [Territories of Interest] as 'Extract(NonEmptyCrossJoin([Markets].[Territory].Members, [Product].[Line].Members), [Markets])' select ({[Time].[2005]} * {[Measures].[Quantity], [Measures].[Sales]}) ON COLUMNS, NON EMPTY [Territories of Interest] ON ROWS from [SteelWheelsSales] ] at com.tonbeller.jpivot.mondrian.MondrianModel.getResult(MondrianModel.java:307) at com.tonbeller.jpivot.olap.model.OlapModelDecorator.getResult(OlapModelDecorator.java:54) at com.tonbeller.jpivot.olap.model.CachingOlapModel.getResult(CachingOlapModel.java:48) at com.tonbeller.jpivot.olap.model.OlapModelDecorator.getResult(OlapModelDecorator.java:54) at com.tonbeller.jpivot.table.TableComponent.updateOlapModel(TableComponent.java:246) at com.tonbeller.jpivot.table.TableComponent.render2(TableComponent.java:251) at com.tonbeller.jpivot.table.TableComponent.render(TableComponent.java:235) at com.tonbeller.wcf.component.RendererTag.doEndTag(RendererTag.java:137) at org.apache.jsp.jsp.Pivot_jsp._jspService(Pivot_jsp.java:2758) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.pentaho.platform.web.http.filters.PentahoWebContextFilter.doFilter(PentahoWebContextFilter.java:102) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.pentaho.platform.web.http.filters.PentahoRequestContextFilter.doFilter(PentahoRequestContextFilter.java:84) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378) at org.springframework.security.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109) at org.springframework.security.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.ui.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:101) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.pentaho.platform.web.http.security.SecurityStartupFilter.doFilter(SecurityStartupFilter.java:103) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.providers.anonymous.AnonymousProcessingFilter.doFilterHttp(AnonymousProcessingFilter.java:105) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.pentaho.platform.web.http.security.RequestParameterAuthenticationFilter.doFilter(RequestParameterAuthenticationFilter.java:169) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.ui.basicauth.BasicProcessingFilter.doFilterHttp(BasicProcessingFilter.java:174) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.ui.AbstractProcessingFilter.doFilterHttp(AbstractProcessingFilter.java:278) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.ui.logout.LogoutFilter.doFilterHttp(LogoutFilter.java:89) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.pentaho.platform.web.http.security.HttpSessionReuseDetectionFilter.doFilter(HttpSessionReuseDetectionFilter.java:134) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:235) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.wrapper.SecurityContextHolderAwareRequestFilter.doFilterHttp(SecurityContextHolderAwareRequestFilter.java:91) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.util.FilterChainProxy.doFilter(FilterChainProxy.java:175) at org.springframework.security.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:99) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.pentaho.platform.web.http.filters.SystemStatusFilter.doFilter(SystemStatusFilter.java:60) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.pentaho.platform.web.http.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:113) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:470) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Unknown Source) Caused by: mondrian.olap.MondrianException: Mondrian Error:Internal error: Error while executing query [with set [Territories of Interest] as 'Extract(NonEmptyCrossJoin([Markets].[Territory].Members, [Product].[Line].Members), [Markets])' select ({[Time].[2005]} * {[Measures].[Quantity], [Measures].[Sales]}) ON COLUMNS, NON EMPTY [Territories of Interest] ON ROWS from [SteelWheelsSales] ] at mondrian.resource.MondrianResource$_Def0.ex(MondrianResource.java:962) at mondrian.olap.Util.newInternal(Util.java:2421) at mondrian.olap.Util.newError(Util.java:2437) at mondrian.rolap.RolapConnection.executeInternal(RolapConnection.java:693) at mondrian.rolap.RolapConnection.access$000(RolapConnection.java:51) at mondrian.rolap.RolapConnection$1.call(RolapConnection.java:607) at mondrian.rolap.RolapConnection$1.call(RolapConnection.java:605) at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ... 1 more Caused by: java.lang.NullPointerException at mondrian.rolap.SqlConstraintUtils.generateMultiValueInExpr(SqlConstraintUtils.java:1154) at mondrian.rolap.SqlConstraintUtils.addContextConstraint(SqlConstraintUtils.java:229) at mondrian.rolap.SqlContextConstraint.addConstraint(SqlContextConstraint.java:282) at mondrian.rolap.SqlTupleReader.generateSelectForLevels(SqlTupleReader.java:834) at mondrian.rolap.SqlTupleReader.makeLevelMembersSql(SqlTupleReader.java:750) at mondrian.rolap.SqlTupleReader.prepareTuples(SqlTupleReader.java:390) at mondrian.rolap.SqlTupleReader.readTuples(SqlTupleReader.java:545) at mondrian.rolap.SqlMemberSource.getMembersInLevel(SqlMemberSource.java:507) at mondrian.rolap.SmartMemberReader.getMembersInLevel(SmartMemberReader.java:138) at mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.getMembersInLevel(RolapCubeHierarchy.java:724) at mondrian.rolap.RestrictedMemberReader.getMembersInLevel(RestrictedMemberReader.java:239) at mondrian.rolap.RolapSchemaReader.getLevelMembers(RolapSchemaReader.java:548) at mondrian.olap.DelegatingSchemaReader.getLevelMembers(DelegatingSchemaReader.java:240) at mondrian.olap.fun.FunUtil.getNonEmptyLevelMembers(FunUtil.java:2155) at mondrian.olap.fun.FunUtil.levelMembers(FunUtil.java:2169) at mondrian.olap.fun.LevelMembersFunDef$1.evaluateList(LevelMembersFunDef.java:37) at mondrian.rolap.sql.CrossJoinArgFactory.expandNonNative(CrossJoinArgFactory.java:910) at mondrian.rolap.sql.CrossJoinArgFactory.checkCrossJoin(CrossJoinArgFactory.java:341) at mondrian.rolap.RolapNativeCrossJoin.createEvaluator(RolapNativeCrossJoin.java:105) at mondrian.rolap.RolapNativeRegistry.createEvaluator(RolapNativeRegistry.java:56) at mondrian.rolap.RolapSchemaReader.getNativeSetEvaluator(RolapSchemaReader.java:663) at mondrian.olap.DelegatingSchemaReader.getNativeSetEvaluator(DelegatingSchemaReader.java:267) at mondrian.olap.fun.NonEmptyCrossJoinFunDef$1.evaluateList(NonEmptyCrossJoinFunDef.java:75) at mondrian.olap.fun.ExtractFunDef$2.evaluateList(ExtractFunDef.java:189) at mondrian.calc.impl.AbstractListCalc.evaluate(AbstractListCalc.java:65) at mondrian.rolap.RolapResult.evaluateExp(RolapResult.java:913) at mondrian.rolap.RolapNamedSetEvaluator.ensureList(RolapNamedSetEvaluator.java:88) at mondrian.rolap.RolapNamedSetEvaluator.evaluateTupleIterable(RolapNamedSetEvaluator.java:61) at mondrian.mdx.NamedSetExpr$1.evaluateIterable(NamedSetExpr.java:98) at mondrian.rolap.RolapResult.executeAxis(RolapResult.java:811) at mondrian.rolap.RolapResult.evalLoad(RolapResult.java:642) at mondrian.rolap.RolapResult.loadMembers(RolapResult.java:598) at mondrian.rolap.RolapResult.<init>(RolapResult.java:286) at mondrian.rolap.RolapConnection.executeInternal(RolapConnection.java:656) ... 8 more

    Pentaho BI Platform Tracking | 4 years ago | Gerald E Butler
    com.tonbeller.jpivot.olap.model.OlapException: mondrian.olap.MondrianException: Mondrian Error:Internal error: Error while executing query [with set [Territories of Interest] as 'Extract(NonEmptyCrossJoin([Markets].[Territory].Members, [Product].[Line].Members), [Markets])' select ({[Time].[2005]} * {[Measures].[Quantity], [Measures].[Sales]}) ON COLUMNS, NON EMPTY [Territories of Interest] ON ROWS from [SteelWheelsSales] ]
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    Doing an EXTRACT on a set that was built from a cross-join or NonEmptyCrossJoin results in an error. Here is the SteelWheels schema used to replicate the issue: <Schema name="SteelWheels"> <Cube name="SteelWheelsSales" cache="true" enabled="true"> <Table name="ORDERFACT"> </Table> <Dimension foreignKey="CUSTOMERNUMBER" name="Markets"> <Hierarchy name="Markets" hasAll="true" allMemberName="All Markets" primaryKey="CUSTOMERNUMBER"> <Table name="CUSTOMER_W_TER"> </Table> <Level name="Territory" column="TERRITORY" nameColumn="TERRITORY" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never"> </Level> <Level name="Country" column="COUNTRY" nameColumn="COUNTRY" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never"> <Annotations> <Annotation name="Data.Role">Geography</Annotation> <Annotation name="Geo.Role">country</Annotation> </Annotations> </Level> <Level name="State Province" column="STATE" nameColumn="STATE" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never"> <Annotations> <Annotation name="Data.Role">Geography</Annotation> <Annotation name="Geo.Role">state</Annotation> <Annotation name="Geo.RequiredParents">country</Annotation> </Annotations> </Level> <Level name="City" column="CITY" nameColumn="CITY" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never"> <Annotations> <Annotation name="Data.Role">Geography</Annotation> <Annotation name="Geo.Role">city</Annotation> <Annotation name="Geo.RequiredParents">country,state</Annotation> </Annotations> </Level> </Hierarchy> </Dimension> <Dimension foreignKey="CUSTOMERNUMBER" name="Customers"> <Hierarchy hasAll="true" allMemberName="All Customers" primaryKey="CUSTOMERNUMBER"> <Table name="CUSTOMER_W_TER"> </Table> <Level name="Customer" column="CUSTOMERNAME" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never"> <Property name="Customer Number" column="CUSTOMERNUMBER" type="Numeric"/> <Property name="Contact First Name" column="CONTACTFIRSTNAME" type="String"/> <Property name="Contact Last Name" column="CONTACTLASTNAME" type="String"/> <Property name="Phone" column="PHONE" type="String"/> <Property name="Address" column="ADDRESSLINE1" type="String"/> <Property name="Credit Limit" column="CREDITLIMIT" type="Numeric"/> </Level> </Hierarchy> </Dimension> <Dimension foreignKey="PRODUCTCODE" name="Product"> <Hierarchy name="" hasAll="true" allMemberName="All Products" primaryKey="PRODUCTCODE" primaryKeyTable="PRODUCTS" caption=""> <Table name="PRODUCTS"> </Table> <Level name="Line" table="PRODUCTS" column="PRODUCTLINE" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never"> </Level> <Level name="Vendor" table="PRODUCTS" column="PRODUCTVENDOR" type="String" uniqueMembers="false" levelType="Regular" hideMemberIf="Never"> </Level> <Level name="Product" table="PRODUCTS" column="PRODUCTNAME" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never"> <Property name="Code" column="PRODUCTCODE" type="String"/> <Property name="Vendor" column="PRODUCTVENDOR" type="String"/> <Property name="Description" column="PRODUCTDESCRIPTION" type="String"/> </Level> </Hierarchy> </Dimension> <Dimension type="TimeDimension" foreignKey="TIME_ID" name="Time"> <Hierarchy hasAll="true" allMemberName="All Years" primaryKey="TIME_ID"> <Table name="DIM_TIME"> </Table> <Level name="Years" column="YEAR_ID" type="String" uniqueMembers="true" levelType="TimeYears" hideMemberIf="Never"> <Annotations> <Annotation name="AnalyzerDateFormat">[yyyy]</Annotation> </Annotations> </Level> <Level name="Quarters" column="QTR_NAME" ordinalColumn="QTR_ID" type="String" uniqueMembers="false" levelType="TimeQuarters" hideMemberIf="Never"> <Annotations> <Annotation name="AnalyzerDateFormat">[yyyy].['QTR'q]</Annotation> </Annotations> </Level> <Level name="Months" column="MONTH_NAME" ordinalColumn="MONTH_ID" type="String" uniqueMembers="false" levelType="TimeMonths" hideMemberIf="Never"> <Annotations> <Annotation name="AnalyzerDateFormat">[yyyy].['QTR'q].[MMM]</Annotation> </Annotations> </Level> </Hierarchy> </Dimension> <Dimension foreignKey="STATUS" name="Order Status"> <Hierarchy hasAll="true" allMemberName="All Status Types" primaryKey="STATUS"> <Level name="Type" column="STATUS" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never"> </Level> </Hierarchy> </Dimension> <Measure name="Quantity" column="QUANTITYORDERED" formatString="#,###" aggregator="sum"> <Annotations> <Annotation name="AnalyzerBusinessGroup">Measures</Annotation> </Annotations> </Measure> <Measure name="Sales" column="TOTALPRICE" formatString="#,###" aggregator="sum"> <Annotations> <Annotation name="AnalyzerBusinessGroup">Measures</Annotation> </Annotations> </Measure> </Cube> <Role name="CUBE_SCHEMA_ALL"> <SchemaGrant access="all" /> </Role> <Role name="CUBE_SALES_MINIMAL"> <SchemaGrant access="none"> <CubeGrant cube="SteelWheelsSales" access="all"> <HierarchyGrant hierarchy="[Markets.Markets]" access="none" /> </CubeGrant> </SchemaGrant> </Role> <Role name='DIM_MARKETAREA_*'> <SchemaGrant access='none'> <CubeGrant cube='SteelWheelsSales' access='none'> <HierarchyGrant hierarchy='[Markets.Markets]' access='all'/> </CubeGrant> </SchemaGrant> </Role> <Role name='DIM_MARKETAREA_MARKET_800'> <SchemaGrant access='none'> <CubeGrant cube='SteelWheelsSales' access='none'> <HierarchyGrant hierarchy='[Markets.Markets]' access='custom' rollupPolicy="partial" topLevel='[Markets.Markets].[Territory]'> <MemberGrant member='[Markets.Markets].[Territory].[APAC]' access='all' /> <!-- <MemberGrant member='[Markets.Markets].[Territory].[EMEA]' access='none' /> <MemberGrant member='[Markets.Markets].[Territory].[Japan]' access='none' /> <MemberGrant member='[Markets.Markets].[Territory].[NA]' access='none' /> --> </HierarchyGrant> </CubeGrant> </SchemaGrant> </Role> <Role name='DIM_MARKETAREA_MARKET_850'> <SchemaGrant access='none'> <CubeGrant cube='SteelWheelsSales' access='none'> <HierarchyGrant hierarchy='[Markets.Markets]' access='custom' rollupPolicy="partial" topLevel='[Markets.Markets].[Territory]'> <MemberGrant member='[Markets.Markets].[Territory].[EMEA]' access='all' /> </HierarchyGrant> </CubeGrant> </SchemaGrant> </Role> <Role name='DIM_MARKETAREA_MARKET_900'> <SchemaGrant access='none'> <CubeGrant cube='SteelWheelsSales' access='none'> <HierarchyGrant hierarchy='[Markets.Markets]' access='custom' rollupPolicy="partial" topLevel='[Markets.Markets].[Territory]'> <MemberGrant member='[Markets.Markets].[Territory].[Japan]' access='all' /> </HierarchyGrant> </CubeGrant> </SchemaGrant> </Role> <Role name='DIM_MARKETAREA_MARKET_100'> <SchemaGrant access='none'> <CubeGrant cube='SteelWheelsSales' access='none'> <HierarchyGrant hierarchy='[Markets.Markets]' access='custom' rollupPolicy="partial" topLevel='[Markets.Markets].[Territory]'> <MemberGrant member='[Markets.Markets].[Territory].[NA]' access='all' /> </HierarchyGrant> </CubeGrant> </SchemaGrant> </Role> </Schema> And, here is an example of a query that fails on the EXTRACT function: with set [Territories of Interest] as Extract( NonEmptyCrossJoin ( [Markets.Markets].[Territory].Members, [Product].[Line].Members ), [Markets.Markets] ) select [Time].[Years].[2005] * { [Measures].[Quantity], [Measures].[Sales] } ON COLUMNS, NON EMPTY [Territories of Interest] ON ROWS from [SteelWheelsSales] And here is the DEBUG log produced: 2012-09-26 13:57:54,070 DEBUG [mondrian.mdx] 15370: with set [Territories of Interest] as 'Extract(NonEmptyCrossJoin([Markets].[Territory].Members, [Product].[Line].Members), [Markets])' select ({[Time].[2005]} * {[Measures].[Quantity], [Measures].[Sales]}) ON COLUMNS, NON EMPTY [Territories of Interest] ON ROWS from [SteelWheelsSales] 2012-09-26 13:57:54,085 DEBUG [mondrian.sql] 5296: SqlTupleReader.readTuples [[Markets].[Country]]: executing sql [ select "CUSTOMER_W_TER"."TERRITORY" as "c0", "CUSTOMER_W_TER"."TERRITORY" as "c1", "CUSTOMER_W_TER"."COUNTRY" as "c2", "CUSTOMER_W_TER"."COUNTRY" as "c3" from "CUSTOMER_W_TER" as "CUSTOMER_W_TER" group by "CUSTOMER_W_TER"."TERRITORY", "CUSTOMER_W_TER"."COUNTRY" order by CASE WHEN "CUSTOMER_W_TER"."TERRITORY" IS NULL THEN 1 ELSE 0 END, "CUSTOMER_W_TER"."TERRITORY" ASC, CASE WHEN "CUSTOMER_W_TER"."COUNTRY" IS NULL THEN 1 ELSE 0 END, "CUSTOMER_W_TER"."COUNTRY" ASC] 2012-09-26 13:57:54,085 DEBUG [mondrian.sql] 5296: , exec 0 ms 2012-09-26 13:57:54,086 DEBUG [mondrian.sql] 5296: , exec+fetch 1 ms, 33 rows 2012-09-26 13:57:54,086 DEBUG [mondrian.sql] 5297: SqlTupleReader.readTuples [[Markets].[State Province]]: executing sql [ select "CUSTOMER_W_TER"."TERRITORY" as "c0", "CUSTOMER_W_TER"."TERRITORY" as "c1", "CUSTOMER_W_TER"."COUNTRY" as "c2", "CUSTOMER_W_TER"."COUNTRY" as "c3", "CUSTOMER_W_TER"."STATE" as "c4", "CUSTOMER_W_TER"."STATE" as "c5" from "CUSTOMER_W_TER" as "CUSTOMER_W_TER" group by "CUSTOMER_W_TER"."TERRITORY", "CUSTOMER_W_TER"."COUNTRY", "CUSTOMER_W_TER"."STATE" order by CASE WHEN "CUSTOMER_W_TER"."TERRITORY" IS NULL THEN 1 ELSE 0 END, "CUSTOMER_W_TER"."TERRITORY" ASC, CASE WHEN "CUSTOMER_W_TER"."COUNTRY" IS NULL THEN 1 ELSE 0 END, "CUSTOMER_W_TER"."COUNTRY" ASC, CASE WHEN "CUSTOMER_W_TER"."STATE" IS NULL THEN 1 ELSE 0 END, "CUSTOMER_W_TER"."STATE" ASC] 2012-09-26 13:57:54,087 DEBUG [mondrian.sql] 5297: , exec 0 ms 2012-09-26 13:57:54,087 DEBUG [mondrian.sql] 5297: , exec+fetch 0 ms, 45 rows 2012-09-26 13:57:54,088 DEBUG [mondrian.mdx] 15370: exec: 18 ms 2012-09-26 13:57:54,092 DEBUG [mondrian.mdx] 15372: with set [Territories of Interest] as 'Extract(NonEmptyCrossJoin([Markets].[Territory].Members, [Product].[Line].Members), [Markets])' select ({[Time].[2005]} * {[Measures].[Quantity], [Measures].[Sales]}) ON COLUMNS, NON EMPTY [Territories of Interest] ON ROWS from [SteelWheelsSales] 2012-09-26 13:57:54,093 DEBUG [mondrian.mdx] 15372: exec: 1 ms 2012-09-26 13:57:54,093 ERROR [com.tonbeller.wcf.component.RendererTag] trouble rendering tableb214fcc5-0803-11e2-a9f7-550baa93f4c4 com.tonbeller.jpivot.olap.model.OlapException: mondrian.olap.MondrianException: Mondrian Error:Internal error: Error while executing query [with set [Territories of Interest] as 'Extract(NonEmptyCrossJoin([Markets].[Territory].Members, [Product].[Line].Members), [Markets])' select ({[Time].[2005]} * {[Measures].[Quantity], [Measures].[Sales]}) ON COLUMNS, NON EMPTY [Territories of Interest] ON ROWS from [SteelWheelsSales] ] at com.tonbeller.jpivot.mondrian.MondrianModel.getResult(MondrianModel.java:307) at com.tonbeller.jpivot.olap.model.OlapModelDecorator.getResult(OlapModelDecorator.java:54) at com.tonbeller.jpivot.olap.model.CachingOlapModel.getResult(CachingOlapModel.java:48) at com.tonbeller.jpivot.olap.model.OlapModelDecorator.getResult(OlapModelDecorator.java:54) at com.tonbeller.jpivot.table.TableComponent.updateOlapModel(TableComponent.java:246) at com.tonbeller.jpivot.table.TableComponent.render2(TableComponent.java:251) at com.tonbeller.jpivot.table.TableComponent.render(TableComponent.java:235) at com.tonbeller.wcf.component.RendererTag.doEndTag(RendererTag.java:137) at org.apache.jsp.jsp.Pivot_jsp._jspService(Pivot_jsp.java:2758) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.pentaho.platform.web.http.filters.PentahoWebContextFilter.doFilter(PentahoWebContextFilter.java:102) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.pentaho.platform.web.http.filters.PentahoRequestContextFilter.doFilter(PentahoRequestContextFilter.java:84) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:378) at org.springframework.security.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109) at org.springframework.security.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.ui.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:101) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.pentaho.platform.web.http.security.SecurityStartupFilter.doFilter(SecurityStartupFilter.java:103) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.providers.anonymous.AnonymousProcessingFilter.doFilterHttp(AnonymousProcessingFilter.java:105) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.pentaho.platform.web.http.security.RequestParameterAuthenticationFilter.doFilter(RequestParameterAuthenticationFilter.java:169) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.ui.basicauth.BasicProcessingFilter.doFilterHttp(BasicProcessingFilter.java:174) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.ui.AbstractProcessingFilter.doFilterHttp(AbstractProcessingFilter.java:278) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.ui.logout.LogoutFilter.doFilterHttp(LogoutFilter.java:89) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.pentaho.platform.web.http.security.HttpSessionReuseDetectionFilter.doFilter(HttpSessionReuseDetectionFilter.java:134) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:235) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.wrapper.SecurityContextHolderAwareRequestFilter.doFilterHttp(SecurityContextHolderAwareRequestFilter.java:91) at org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53) at org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:390) at org.springframework.security.util.FilterChainProxy.doFilter(FilterChainProxy.java:175) at org.springframework.security.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:99) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.pentaho.platform.web.http.filters.SystemStatusFilter.doFilter(SystemStatusFilter.java:60) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.pentaho.platform.web.http.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:113) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:470) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Unknown Source) Caused by: mondrian.olap.MondrianException: Mondrian Error:Internal error: Error while executing query [with set [Territories of Interest] as 'Extract(NonEmptyCrossJoin([Markets].[Territory].Members, [Product].[Line].Members), [Markets])' select ({[Time].[2005]} * {[Measures].[Quantity], [Measures].[Sales]}) ON COLUMNS, NON EMPTY [Territories of Interest] ON ROWS from [SteelWheelsSales] ] at mondrian.resource.MondrianResource$_Def0.ex(MondrianResource.java:962) at mondrian.olap.Util.newInternal(Util.java:2421) at mondrian.olap.Util.newError(Util.java:2437) at mondrian.rolap.RolapConnection.executeInternal(RolapConnection.java:693) at mondrian.rolap.RolapConnection.access$000(RolapConnection.java:51) at mondrian.rolap.RolapConnection$1.call(RolapConnection.java:607) at mondrian.rolap.RolapConnection$1.call(RolapConnection.java:605) at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ... 1 more Caused by: java.lang.NullPointerException at mondrian.rolap.SqlConstraintUtils.generateMultiValueInExpr(SqlConstraintUtils.java:1154) at mondrian.rolap.SqlConstraintUtils.addContextConstraint(SqlConstraintUtils.java:229) at mondrian.rolap.SqlContextConstraint.addConstraint(SqlContextConstraint.java:282) at mondrian.rolap.SqlTupleReader.generateSelectForLevels(SqlTupleReader.java:834) at mondrian.rolap.SqlTupleReader.makeLevelMembersSql(SqlTupleReader.java:750) at mondrian.rolap.SqlTupleReader.prepareTuples(SqlTupleReader.java:390) at mondrian.rolap.SqlTupleReader.readTuples(SqlTupleReader.java:545) at mondrian.rolap.SqlMemberSource.getMembersInLevel(SqlMemberSource.java:507) at mondrian.rolap.SmartMemberReader.getMembersInLevel(SmartMemberReader.java:138) at mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.getMembersInLevel(RolapCubeHierarchy.java:724) at mondrian.rolap.RestrictedMemberReader.getMembersInLevel(RestrictedMemberReader.java:239) at mondrian.rolap.RolapSchemaReader.getLevelMembers(RolapSchemaReader.java:548) at mondrian.olap.DelegatingSchemaReader.getLevelMembers(DelegatingSchemaReader.java:240) at mondrian.olap.fun.FunUtil.getNonEmptyLevelMembers(FunUtil.java:2155) at mondrian.olap.fun.FunUtil.levelMembers(FunUtil.java:2169) at mondrian.olap.fun.LevelMembersFunDef$1.evaluateList(LevelMembersFunDef.java:37) at mondrian.rolap.sql.CrossJoinArgFactory.expandNonNative(CrossJoinArgFactory.java:910) at mondrian.rolap.sql.CrossJoinArgFactory.checkCrossJoin(CrossJoinArgFactory.java:341) at mondrian.rolap.RolapNativeCrossJoin.createEvaluator(RolapNativeCrossJoin.java:105) at mondrian.rolap.RolapNativeRegistry.createEvaluator(RolapNativeRegistry.java:56) at mondrian.rolap.RolapSchemaReader.getNativeSetEvaluator(RolapSchemaReader.java:663) at mondrian.olap.DelegatingSchemaReader.getNativeSetEvaluator(DelegatingSchemaReader.java:267) at mondrian.olap.fun.NonEmptyCrossJoinFunDef$1.evaluateList(NonEmptyCrossJoinFunDef.java:75) at mondrian.olap.fun.ExtractFunDef$2.evaluateList(ExtractFunDef.java:189) at mondrian.calc.impl.AbstractListCalc.evaluate(AbstractListCalc.java:65) at mondrian.rolap.RolapResult.evaluateExp(RolapResult.java:913) at mondrian.rolap.RolapNamedSetEvaluator.ensureList(RolapNamedSetEvaluator.java:88) at mondrian.rolap.RolapNamedSetEvaluator.evaluateTupleIterable(RolapNamedSetEvaluator.java:61) at mondrian.mdx.NamedSetExpr$1.evaluateIterable(NamedSetExpr.java:98) at mondrian.rolap.RolapResult.executeAxis(RolapResult.java:811) at mondrian.rolap.RolapResult.evalLoad(RolapResult.java:642) at mondrian.rolap.RolapResult.loadMembers(RolapResult.java:598) at mondrian.rolap.RolapResult.<init>(RolapResult.java:286) at mondrian.rolap.RolapConnection.executeInternal(RolapConnection.java:656) ... 8 more

    Pentaho BI Platform Tracking | 4 years ago | Gerald E Butler
    com.tonbeller.jpivot.olap.model.OlapException: mondrian.olap.MondrianException: Mondrian Error:Internal error: Error while executing query [with set [Territories of Interest] as 'Extract(NonEmptyCrossJoin([Markets].[Territory].Members, [Product].[Line].Members), [Markets])' select ({[Time].[2005]} * {[Measures].[Quantity], [Measures].[Sales]}) ON COLUMNS, NON EMPTY [Territories of Interest] ON ROWS from [SteelWheelsSales] ]

    Root Cause Analysis

    1. java.lang.NullPointerException

      No message provided

      at mondrian.rolap.SqlConstraintUtils.joinLevelTableToFactTable()
    2. mondrian.rolap
      RolapSchemaReader.getLevelMembers
      1. mondrian.rolap.SqlConstraintUtils.joinLevelTableToFactTable(SqlConstraintUtils.java:684)
      2. mondrian.rolap.SqlConstraintUtils.addRoleAccessConstraints(SqlConstraintUtils.java:299)
      3. mondrian.rolap.SqlConstraintUtils.addContextConstraint(SqlConstraintUtils.java:215)
      4. mondrian.rolap.SqlContextConstraint.addConstraint(SqlContextConstraint.java:308)
      5. mondrian.rolap.SqlTupleReader.generateSelectForLevels(SqlTupleReader.java:923)
      6. mondrian.rolap.SqlTupleReader.makeLevelMembersSql(SqlTupleReader.java:784)
      7. mondrian.rolap.SqlTupleReader.prepareTuples(SqlTupleReader.java:390)
      8. mondrian.rolap.SqlTupleReader.readMembers(SqlTupleReader.java:506)
      9. mondrian.rolap.SqlMemberSource.getMembersInLevel(SqlMemberSource.java:508)
      10. mondrian.rolap.SmartMemberReader.getMembersInLevel(SmartMemberReader.java:146)
      11. mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.getMembersInLevel(RolapCubeHierarchy.java:727)
      12. mondrian.rolap.RestrictedMemberReader.getMembersInLevel(RestrictedMemberReader.java:241)
      13. mondrian.rolap.SubstitutingMemberReader.getMembersInLevel(SubstitutingMemberReader.java:185)
      14. mondrian.rolap.RolapSchemaReader.getLevelMembers(RolapSchemaReader.java:547)
      14 frames
    3. mondrian.olap
      DelegatingSchemaReader.getLevelMembers
      1. mondrian.olap.DelegatingSchemaReader.getLevelMembers(DelegatingSchemaReader.java:242)
      1 frame
    4. mondrian.olap.fun
      BuiltinFunTable$27$1.evaluateList
      1. mondrian.olap.fun.FunUtil.getNonEmptyLevelMembers(FunUtil.java:2195)
      2. mondrian.olap.fun.FunUtil.hierarchyMembers(FunUtil.java:2231)
      3. mondrian.olap.fun.BuiltinFunTable$27$1.evaluateList(BuiltinFunTable.java:957)
      3 frames
    5. mondrian.calc.impl
      AbstractListCalc.evaluateIterable
      1. mondrian.calc.impl.AbstractListCalc.evaluateIterable(AbstractListCalc.java:71)
      1 frame
    6. mondrian.olap.fun
      CrossJoinFunDef$CrossJoinIterCalc.evaluateIterable
      1. mondrian.olap.fun.CrossJoinFunDef$CrossJoinIterCalc.evaluateIterable(CrossJoinFunDef.java:185)
      1 frame
    7. mondrian.rolap
      RolapConnection$1.call
      1. mondrian.rolap.RolapResult.executeAxis(RolapResult.java:875)
      2. mondrian.rolap.RolapResult.evalLoad(RolapResult.java:700)
      3. mondrian.rolap.RolapResult.loadMembers(RolapResult.java:656)
      4. mondrian.rolap.RolapResult.<init>(RolapResult.java:288)
      5. mondrian.rolap.RolapConnection.executeInternal(RolapConnection.java:671)
      6. mondrian.rolap.RolapConnection.access$000(RolapConnection.java:51)
      7. mondrian.rolap.RolapConnection$1.call(RolapConnection.java:622)
      8. mondrian.rolap.RolapConnection$1.call(RolapConnection.java:620)
      8 frames
    8. Java RT
      Thread.run
      1. java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
      2. java.util.concurrent.FutureTask.run(FutureTask.java:166)
      3. java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
      4. java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
      5. java.lang.Thread.run(Thread.java:722)
      5 frames