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] ]

Pentaho BI Platform Tracking | Gerald E Butler | 4 years ago
  1. 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] ]
  2. 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] ]
  3. 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
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 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
    mondrian.olap.MondrianException: Mondrian Error:Internal error: Error while executing query [select NON EMPTY Crossjoin([Promotions].Members, [Gender].Members) ON COLUMNS from [VirtualSalesTest] ]
  6. 0

    Android: Saving Map State in Google map

    Stack Overflow | 11 months ago | Junie Negentien
    java.lang.RuntimeException: Unable to resume activity {com.ourThesis.junieNegentien2015/com.ourThesis.junieNegentien2015.MainActivity}: java.lang.NullPointerException

    Not finding the right solution?
    Take a tour to get the most out of Samebug.

    Tired of useless tips?

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. java.lang.NullPointerException

      No message provided

      at mondrian.rolap.SqlConstraintUtils.generateMultiValueInExpr()
    2. mondrian.rolap
      RolapSchemaReader.getLevelMembers
      1. mondrian.rolap.SqlConstraintUtils.generateMultiValueInExpr(SqlConstraintUtils.java:1154)
      2. mondrian.rolap.SqlConstraintUtils.addContextConstraint(SqlConstraintUtils.java:229)
      3. mondrian.rolap.SqlContextConstraint.addConstraint(SqlContextConstraint.java:282)
      4. mondrian.rolap.SqlTupleReader.generateSelectForLevels(SqlTupleReader.java:834)
      5. mondrian.rolap.SqlTupleReader.makeLevelMembersSql(SqlTupleReader.java:750)
      6. mondrian.rolap.SqlTupleReader.prepareTuples(SqlTupleReader.java:390)
      7. mondrian.rolap.SqlTupleReader.readTuples(SqlTupleReader.java:545)
      8. mondrian.rolap.SqlMemberSource.getMembersInLevel(SqlMemberSource.java:507)
      9. mondrian.rolap.SmartMemberReader.getMembersInLevel(SmartMemberReader.java:138)
      10. mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.getMembersInLevel(RolapCubeHierarchy.java:724)
      11. mondrian.rolap.RestrictedMemberReader.getMembersInLevel(RestrictedMemberReader.java:239)
      12. mondrian.rolap.RolapSchemaReader.getLevelMembers(RolapSchemaReader.java:548)
      12 frames
    3. mondrian.olap
      DelegatingSchemaReader.getLevelMembers
      1. mondrian.olap.DelegatingSchemaReader.getLevelMembers(DelegatingSchemaReader.java:240)
      1 frame
    4. mondrian.olap.fun
      LevelMembersFunDef$1.evaluateList
      1. mondrian.olap.fun.FunUtil.getNonEmptyLevelMembers(FunUtil.java:2155)
      2. mondrian.olap.fun.FunUtil.levelMembers(FunUtil.java:2169)
      3. mondrian.olap.fun.LevelMembersFunDef$1.evaluateList(LevelMembersFunDef.java:37)
      3 frames
    5. mondrian.rolap.sql
      CrossJoinArgFactory.checkCrossJoin
      1. mondrian.rolap.sql.CrossJoinArgFactory.expandNonNative(CrossJoinArgFactory.java:910)
      2. mondrian.rolap.sql.CrossJoinArgFactory.checkCrossJoin(CrossJoinArgFactory.java:341)
      2 frames
    6. mondrian.rolap
      RolapSchemaReader.getNativeSetEvaluator
      1. mondrian.rolap.RolapNativeCrossJoin.createEvaluator(RolapNativeCrossJoin.java:105)
      2. mondrian.rolap.RolapNativeRegistry.createEvaluator(RolapNativeRegistry.java:56)
      3. mondrian.rolap.RolapSchemaReader.getNativeSetEvaluator(RolapSchemaReader.java:663)
      3 frames
    7. mondrian.olap
      DelegatingSchemaReader.getNativeSetEvaluator
      1. mondrian.olap.DelegatingSchemaReader.getNativeSetEvaluator(DelegatingSchemaReader.java:267)
      1 frame
    8. mondrian.olap.fun
      ExtractFunDef$2.evaluateList
      1. mondrian.olap.fun.NonEmptyCrossJoinFunDef$1.evaluateList(NonEmptyCrossJoinFunDef.java:75)
      2. mondrian.olap.fun.ExtractFunDef$2.evaluateList(ExtractFunDef.java:189)
      2 frames
    9. mondrian.calc.impl
      AbstractListCalc.evaluate
      1. mondrian.calc.impl.AbstractListCalc.evaluate(AbstractListCalc.java:65)
      1 frame
    10. mondrian.rolap
      RolapNamedSetEvaluator.evaluateTupleIterable
      1. mondrian.rolap.RolapResult.evaluateExp(RolapResult.java:913)
      2. mondrian.rolap.RolapNamedSetEvaluator.ensureList(RolapNamedSetEvaluator.java:88)
      3. mondrian.rolap.RolapNamedSetEvaluator.evaluateTupleIterable(RolapNamedSetEvaluator.java:61)
      3 frames
    11. mondrian.mdx
      NamedSetExpr$1.evaluateIterable
      1. mondrian.mdx.NamedSetExpr$1.evaluateIterable(NamedSetExpr.java:98)
      1 frame
    12. mondrian.rolap
      RolapConnection$1.call
      1. mondrian.rolap.RolapResult.executeAxis(RolapResult.java:811)
      2. mondrian.rolap.RolapResult.evalLoad(RolapResult.java:642)
      3. mondrian.rolap.RolapResult.loadMembers(RolapResult.java:598)
      4. mondrian.rolap.RolapResult.<init>(RolapResult.java:286)
      5. mondrian.rolap.RolapConnection.executeInternal(RolapConnection.java:656)
      6. mondrian.rolap.RolapConnection.access$000(RolapConnection.java:51)
      7. mondrian.rolap.RolapConnection$1.call(RolapConnection.java:607)
      8. mondrian.rolap.RolapConnection$1.call(RolapConnection.java:605)
      8 frames
    13. Java RT
      Thread.run
      1. java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
      2. java.util.concurrent.FutureTask.run(Unknown Source)
      3. java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
      4. java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      5. java.lang.Thread.run(Unknown Source)
      5 frames