mondrian.rolap.RolapCubeMember

Pentaho BI Platform Tracking | Julian Hyde | 7 years ago
  1. 0

    Sergei Mazin wrote: I got [an exception] when executed the same query above from http://localhost:8080/mondrian/xmlaTest.jsp utility <Execute xmlns="urn:schemas-microsoft-com:xml-analysis"> <Command> <Statement> WITH SET [XL_Row_Dim_0] as 'VisualTotals(Distinct(Hierarchize({ Ascendants([Customers].[All Customers].[USA].[CA].[Beverly Hills].[Ari Tweten]), Descendants([Customers].[All Customers].[USA].[CA].[Beverly Hills].[Ari Tweten]), Ascendants([Customers].[All Customers].[Mexico]), Descendants([Customers].[All Customers].[Mexico]) })))' select NON EMPTY Hierarchize(Intersect(DrilldownMember({{DrilldownMember({{DrilldownLevel({[C ustomers].[All Customers]})}}, {[Customers].[All Customers].[USA]})}}, {[Customers].[All Customers].[USA].[CA]}), [XL_Row_Dim_0])) DIMENSION PROPERTIES PARENT_UNIQUE_NAME ON COLUMNS from [Sales] where [Measures].[Unit Sales] </Statement> </Command> <Properties> <PropertyList> <Catalog>FoodMart</Catalog> <DataSourceInfo>Provider=Mondrian;DataSource=MondrianFoodMart;</DataSourceIn fo> <Format>Multidimensional</Format> <AxisFormat>TupleFormat</AxisFormat> </PropertyList> </Properties> </Execute> mondrian.xmla.XmlaException: Mondrian Error:XMLA Execute unparse results error at mondrian.xmla.XmlaHandler.execute(XmlaHandler.java:704) at mondrian.xmla.XmlaHandler.process(XmlaHandler.java:554) at mondrian.xmla.impl.DefaultXmlaServlet.handleSoapBody(DefaultXmlaServlet.java:415) at mondrian.xmla.XmlaServlet.doPost(XmlaServlet.java:311) at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) 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.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:342) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302) at org.apache.jsp.xmla_jsp._jspService(xmla_jsp.java:68) 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:374) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267) 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.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) 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:293) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454) at java.lang.Thread.run(Thread.java:619) Caused by: java.lang.ClassCastException: mondrian.olap.fun.VisualTotalsFunDef$VisualTotalMember cannot be cast to mondrian.rolap.RolapCubeMember at mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.readMemberChildren(RolapCubeHierarchy.java:533) at mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.getMemberChildren(RolapCubeHierarchy.java:646) at mondrian.rolap.SmartMemberReader.getMemberChildren(SmartMemberReader.java:176) at mondrian.rolap.SmartMemberReader.getMemberChildren(SmartMemberReader.java:166) at mondrian.rolap.RolapMember.getPropertyValue(RolapMember.java:619) at mondrian.rolap.RolapMember.getPropertyValue(RolapMember.java:545) at mondrian.xmla.XmlaHandler$MDDataSet_Multidimensional.writeMember(XmlaHandler.java:2133) at mondrian.xmla.XmlaHandler$MDDataSet_Multidimensional.axis(XmlaHandler.java:2102) at mondrian.xmla.XmlaHandler$MDDataSet_Multidimensional.axes(XmlaHandler.java:1973) at mondrian.xmla.XmlaHandler$MDDataSet_Multidimensional.unparse(XmlaHandler.java:1788) at mondrian.xmla.XmlaHandler.execute(XmlaHandler.java:698) ... 30 more It got fixed by changing file mondrian/rolap/RolapCubeHierarchy.java: /* old final List<RolapCubeMember> parentRolapCubeMemberList = Util.cast(parentMembers); for (RolapCubeMember member : parentRolapCubeMemberList) { lookup.put( getUniqueNameForMemberWithoutHierarchy( member.getRolapMember()), member); rolapParents.add(member.getRolapMember()); } */ //new for (Object o : parentMembers) { if(o instanceof VisualTotalMember) { // always skip VisualTotalMembers continue; } else { RolapCubeMember member = (RolapCubeMember)o; lookup.put( getUniqueNameForMemberWithoutHierarchy( member.getRolapMember()), member); rolapParents.add(member.getRolapMember()); } }

    Pentaho BI Platform Tracking | 7 years ago | Julian Hyde
    mondrian.rolap.RolapCubeMember
  2. 0

    Sergei Mazin wrote: I got [an exception] when executed the same query above from http://localhost:8080/mondrian/xmlaTest.jsp utility <Execute xmlns="urn:schemas-microsoft-com:xml-analysis"> <Command> <Statement> WITH SET [XL_Row_Dim_0] as 'VisualTotals(Distinct(Hierarchize({ Ascendants([Customers].[All Customers].[USA].[CA].[Beverly Hills].[Ari Tweten]), Descendants([Customers].[All Customers].[USA].[CA].[Beverly Hills].[Ari Tweten]), Ascendants([Customers].[All Customers].[Mexico]), Descendants([Customers].[All Customers].[Mexico]) })))' select NON EMPTY Hierarchize(Intersect(DrilldownMember({{DrilldownMember({{DrilldownLevel({[C ustomers].[All Customers]})}}, {[Customers].[All Customers].[USA]})}}, {[Customers].[All Customers].[USA].[CA]}), [XL_Row_Dim_0])) DIMENSION PROPERTIES PARENT_UNIQUE_NAME ON COLUMNS from [Sales] where [Measures].[Unit Sales] </Statement> </Command> <Properties> <PropertyList> <Catalog>FoodMart</Catalog> <DataSourceInfo>Provider=Mondrian;DataSource=MondrianFoodMart;</DataSourceIn fo> <Format>Multidimensional</Format> <AxisFormat>TupleFormat</AxisFormat> </PropertyList> </Properties> </Execute> mondrian.xmla.XmlaException: Mondrian Error:XMLA Execute unparse results error at mondrian.xmla.XmlaHandler.execute(XmlaHandler.java:704) at mondrian.xmla.XmlaHandler.process(XmlaHandler.java:554) at mondrian.xmla.impl.DefaultXmlaServlet.handleSoapBody(DefaultXmlaServlet.java:415) at mondrian.xmla.XmlaServlet.doPost(XmlaServlet.java:311) at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) 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.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436) at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:342) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302) at org.apache.jsp.xmla_jsp._jspService(xmla_jsp.java:68) 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:374) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267) 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.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) 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:293) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454) at java.lang.Thread.run(Thread.java:619) Caused by: java.lang.ClassCastException: mondrian.olap.fun.VisualTotalsFunDef$VisualTotalMember cannot be cast to mondrian.rolap.RolapCubeMember at mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.readMemberChildren(RolapCubeHierarchy.java:533) at mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.getMemberChildren(RolapCubeHierarchy.java:646) at mondrian.rolap.SmartMemberReader.getMemberChildren(SmartMemberReader.java:176) at mondrian.rolap.SmartMemberReader.getMemberChildren(SmartMemberReader.java:166) at mondrian.rolap.RolapMember.getPropertyValue(RolapMember.java:619) at mondrian.rolap.RolapMember.getPropertyValue(RolapMember.java:545) at mondrian.xmla.XmlaHandler$MDDataSet_Multidimensional.writeMember(XmlaHandler.java:2133) at mondrian.xmla.XmlaHandler$MDDataSet_Multidimensional.axis(XmlaHandler.java:2102) at mondrian.xmla.XmlaHandler$MDDataSet_Multidimensional.axes(XmlaHandler.java:1973) at mondrian.xmla.XmlaHandler$MDDataSet_Multidimensional.unparse(XmlaHandler.java:1788) at mondrian.xmla.XmlaHandler.execute(XmlaHandler.java:698) ... 30 more It got fixed by changing file mondrian/rolap/RolapCubeHierarchy.java: /* old final List<RolapCubeMember> parentRolapCubeMemberList = Util.cast(parentMembers); for (RolapCubeMember member : parentRolapCubeMemberList) { lookup.put( getUniqueNameForMemberWithoutHierarchy( member.getRolapMember()), member); rolapParents.add(member.getRolapMember()); } */ //new for (Object o : parentMembers) { if(o instanceof VisualTotalMember) { // always skip VisualTotalMembers continue; } else { RolapCubeMember member = (RolapCubeMember)o; lookup.put( getUniqueNameForMemberWithoutHierarchy( member.getRolapMember()), member); rolapParents.add(member.getRolapMember()); } }

    Pentaho BI Platform Tracking | 7 years ago | Julian Hyde
    mondrian.rolap.RolapCubeMember

    Root Cause Analysis

    1. mondrian.rolap.RolapCubeMember

      No message provided

      at mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.readMemberChildren()
    2. mondrian.rolap
      RolapMember.getPropertyValue
      1. mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.readMemberChildren(RolapCubeHierarchy.java:533)
      2. mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.getMemberChildren(RolapCubeHierarchy.java:646)
      3. mondrian.rolap.SmartMemberReader.getMemberChildren(SmartMemberReader.java:176)
      4. mondrian.rolap.SmartMemberReader.getMemberChildren(SmartMemberReader.java:166)
      5. mondrian.rolap.RolapMember.getPropertyValue(RolapMember.java:619)
      6. mondrian.rolap.RolapMember.getPropertyValue(RolapMember.java:545)
      6 frames
    3. mondrian.xmla
      XmlaHandler.execute
      1. mondrian.xmla.XmlaHandler$MDDataSet_Multidimensional.writeMember(XmlaHandler.java:2133)
      2. mondrian.xmla.XmlaHandler$MDDataSet_Multidimensional.axis(XmlaHandler.java:2102)
      3. mondrian.xmla.XmlaHandler$MDDataSet_Multidimensional.axes(XmlaHandler.java:1973)
      4. mondrian.xmla.XmlaHandler$MDDataSet_Multidimensional.unparse(XmlaHandler.java:1788)
      5. mondrian.xmla.XmlaHandler.execute(XmlaHandler.java:698)
      5 frames