mondrian.olap.MondrianException: Mondrian Error:Internal error: Error while executing query [select NON EMPTY {[Time].[1997]} ON COLUMNS, NON EMPTY {StrToMember(Parameter("sProduct", STRING, "[Gender].[Gender].[F]"))} ON ROWS from [Sales] ]

Pentaho BI Platform Tracking | Will Gorman | 7 years ago
tip
Click on the to mark the solution that helps you, Samebug will learn from it.
As a community member, you’ll be rewarded for you help.
  1. 0

    In 3.2.0.13583, The following unit test passes. In 3.2.0.13643, the test fails with a NullPointerException public void testNullStrToMember() { Connection connection = getConnection(); Query query = connection.parseQuery( "select NON EMPTY {[Time].[1997]} ON COLUMNS, " + "NON EMPTY {StrToMember(Parameter(\"sProduct\", STRING, \"[Gender].[Gender].[F]\"))} ON ROWS " + "from [Sales]" ); Parameter[] parameters = query.getParameters(); parameters[0].setValue(null); Result result = connection.execute(query); String resultString = TestContext.toString(result); TestContext.assertEqualsVerbose( "Axis #0:\n" + "{}\n" + "Axis #1:\n" + "{[Time].[1997]}\n" + "Axis #2:\n" + "{[Gender].[F]}\n" + "Row #0: 131,558\n", resultString); } mondrian.olap.MondrianException: Mondrian Error:Internal error: Error while executing query [select NON EMPTY {[Time].[1997]} ON COLUMNS, NON EMPTY {StrToMember(Parameter("sProduct", STRING, "[Gender].[Gender].[F]"))} ON ROWS from [Sales] ] at mondrian.resource.MondrianResource$_Def0.ex(MondrianResource.java:821) at mondrian.olap.Util.newInternal(Util.java:1490) at mondrian.olap.Util.newError(Util.java:1506) at mondrian.rolap.RolapConnection.execute(RolapConnection.java:622) at mondrian.test.ParameterTest.testNullStrToMember(ParameterTest.java:170) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at junit.framework.TestCase.runTest(TestCase.java:154) at junit.framework.TestCase.runBare(TestCase.java:127) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:118) at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196) Caused by: java.lang.NullPointerException at mondrian.util.IdentifierParser.parseMember(IdentifierParser.java:148) at mondrian.olap.fun.FunUtil.parseMember(FunUtil.java:2319) at mondrian.olap.fun.FunUtil.parseMember(FunUtil.java:2326) at mondrian.olap.fun.StrToMemberFunDef$1.evaluateMember(StrToMemberFunDef.java:43) at mondrian.olap.fun.SetFunDef$MemberSetListCalc$2.evaluateVoid(SetFunDef.java:173) at mondrian.olap.fun.SetFunDef$MemberSetListCalc.evaluateMemberList(SetFunDef.java:190) at mondrian.calc.impl.AbstractExpCompiler$MemberListIterCalc.evaluateMemberIterable(AbstractExpCompiler.java:592) at mondrian.calc.impl.AbstractMemberIterCalc.evaluate(AbstractMemberIterCalc.java:52) at mondrian.rolap.RolapResult.executeAxis(RolapResult.java:732) at mondrian.rolap.RolapResult.evalLoad(RolapResult.java:575) at mondrian.rolap.RolapResult.loadMembers(RolapResult.java:541) at mondrian.rolap.RolapResult.<init>(RolapResult.java:273) at mondrian.rolap.RolapConnection.execute(RolapConnection.java:593) ... 17 more

    Pentaho BI Platform Tracking | 7 years ago | Will Gorman
    mondrian.olap.MondrianException: Mondrian Error:Internal error: Error while executing query [select NON EMPTY {[Time].[1997]} ON COLUMNS, NON EMPTY {StrToMember(Parameter("sProduct", STRING, "[Gender].[Gender].[F]"))} ON ROWS from [Sales] ]
  2. 0

    In 3.2.0.13583, The following unit test passes. In 3.2.0.13643, the test fails with a NullPointerException public void testNullStrToMember() { Connection connection = getConnection(); Query query = connection.parseQuery( "select NON EMPTY {[Time].[1997]} ON COLUMNS, " + "NON EMPTY {StrToMember(Parameter(\"sProduct\", STRING, \"[Gender].[Gender].[F]\"))} ON ROWS " + "from [Sales]" ); Parameter[] parameters = query.getParameters(); parameters[0].setValue(null); Result result = connection.execute(query); String resultString = TestContext.toString(result); TestContext.assertEqualsVerbose( "Axis #0:\n" + "{}\n" + "Axis #1:\n" + "{[Time].[1997]}\n" + "Axis #2:\n" + "{[Gender].[F]}\n" + "Row #0: 131,558\n", resultString); } mondrian.olap.MondrianException: Mondrian Error:Internal error: Error while executing query [select NON EMPTY {[Time].[1997]} ON COLUMNS, NON EMPTY {StrToMember(Parameter("sProduct", STRING, "[Gender].[Gender].[F]"))} ON ROWS from [Sales] ] at mondrian.resource.MondrianResource$_Def0.ex(MondrianResource.java:821) at mondrian.olap.Util.newInternal(Util.java:1490) at mondrian.olap.Util.newError(Util.java:1506) at mondrian.rolap.RolapConnection.execute(RolapConnection.java:622) at mondrian.test.ParameterTest.testNullStrToMember(ParameterTest.java:170) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at junit.framework.TestCase.runTest(TestCase.java:154) at junit.framework.TestCase.runBare(TestCase.java:127) at junit.framework.TestResult$1.protect(TestResult.java:106) at junit.framework.TestResult.runProtected(TestResult.java:124) at junit.framework.TestResult.run(TestResult.java:109) at junit.framework.TestCase.run(TestCase.java:118) at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196) Caused by: java.lang.NullPointerException at mondrian.util.IdentifierParser.parseMember(IdentifierParser.java:148) at mondrian.olap.fun.FunUtil.parseMember(FunUtil.java:2319) at mondrian.olap.fun.FunUtil.parseMember(FunUtil.java:2326) at mondrian.olap.fun.StrToMemberFunDef$1.evaluateMember(StrToMemberFunDef.java:43) at mondrian.olap.fun.SetFunDef$MemberSetListCalc$2.evaluateVoid(SetFunDef.java:173) at mondrian.olap.fun.SetFunDef$MemberSetListCalc.evaluateMemberList(SetFunDef.java:190) at mondrian.calc.impl.AbstractExpCompiler$MemberListIterCalc.evaluateMemberIterable(AbstractExpCompiler.java:592) at mondrian.calc.impl.AbstractMemberIterCalc.evaluate(AbstractMemberIterCalc.java:52) at mondrian.rolap.RolapResult.executeAxis(RolapResult.java:732) at mondrian.rolap.RolapResult.evalLoad(RolapResult.java:575) at mondrian.rolap.RolapResult.loadMembers(RolapResult.java:541) at mondrian.rolap.RolapResult.<init>(RolapResult.java:273) at mondrian.rolap.RolapConnection.execute(RolapConnection.java:593) ... 17 more

    Pentaho BI Platform Tracking | 7 years ago | Will Gorman
    mondrian.olap.MondrianException: Mondrian Error:Internal error: Error while executing query [select NON EMPTY {[Time].[1997]} ON COLUMNS, NON EMPTY {StrToMember(Parameter("sProduct", STRING, "[Gender].[Gender].[F]"))} ON ROWS from [Sales] ]

    Root Cause Analysis

    1. java.lang.NullPointerException

      No message provided

      at mondrian.util.IdentifierParser.parseMember()
    2. mondrian.util
      IdentifierParser.parseMember
      1. mondrian.util.IdentifierParser.parseMember(IdentifierParser.java:148)
      1 frame
    3. mondrian.olap.fun
      SetFunDef$MemberSetListCalc.evaluateMemberList
      1. mondrian.olap.fun.FunUtil.parseMember(FunUtil.java:2319)
      2. mondrian.olap.fun.FunUtil.parseMember(FunUtil.java:2326)
      3. mondrian.olap.fun.StrToMemberFunDef$1.evaluateMember(StrToMemberFunDef.java:43)
      4. mondrian.olap.fun.SetFunDef$MemberSetListCalc$2.evaluateVoid(SetFunDef.java:173)
      5. mondrian.olap.fun.SetFunDef$MemberSetListCalc.evaluateMemberList(SetFunDef.java:190)
      5 frames
    4. mondrian.calc.impl
      AbstractMemberIterCalc.evaluate
      1. mondrian.calc.impl.AbstractExpCompiler$MemberListIterCalc.evaluateMemberIterable(AbstractExpCompiler.java:592)
      2. mondrian.calc.impl.AbstractMemberIterCalc.evaluate(AbstractMemberIterCalc.java:52)
      2 frames
    5. mondrian.rolap
      RolapConnection.execute
      1. mondrian.rolap.RolapResult.executeAxis(RolapResult.java:732)
      2. mondrian.rolap.RolapResult.evalLoad(RolapResult.java:575)
      3. mondrian.rolap.RolapResult.loadMembers(RolapResult.java:541)
      4. mondrian.rolap.RolapResult.<init>(RolapResult.java:273)
      5. mondrian.rolap.RolapConnection.execute(RolapConnection.java:593)
      5 frames
    6. mondrian.test
      ParameterTest.testNullStrToMember
      1. mondrian.test.ParameterTest.testNullStrToMember(ParameterTest.java:170)
      1 frame
    7. Java RT
      Method.invoke
      1. sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      2. sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      3. sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      4. java.lang.reflect.Method.invoke(Method.java:585)
      4 frames
    8. JUnit
      TestCase.run
      1. junit.framework.TestCase.runTest(TestCase.java:154)
      2. junit.framework.TestCase.runBare(TestCase.java:127)
      3. junit.framework.TestResult$1.protect(TestResult.java:106)
      4. junit.framework.TestResult.runProtected(TestResult.java:124)
      5. junit.framework.TestResult.run(TestResult.java:109)
      6. junit.framework.TestCase.run(TestCase.java:118)
      6 frames
    9. JUnit3 Runner
      RemoteTestRunner.main
      1. org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
      2. org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
      3. org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
      4. org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
      5. org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
      6. org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
      6 frames