java.lang.RuntimeException: Element 10 has been forgotten

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

    I broke 3 of the test cases in HighCardinalityTest in my change 11947. Now testPromotionsTwoDimensions, testHead, testNonEmpty all fail. Error stack as follows: java.lang.RuntimeException: Element 10 has been forgotten at mondrian.rolap.Target$1.get(Target.java:209) at mondrian.rolap.Target$1.get(Target.java:175) at mondrian.util.TraversalList.get(TraversalList.java:52) at mondrian.util.TraversalList$1.hasNext(TraversalList.java:76) at mondrian.rolap.SqlMemberSource$1$1.hasNext(SqlMemberSource.java:483) at mondrian.rolap.RolapCubeHierarchy$NoCacheRolapCubeHierarchyMemberReader$1$1.hasNext(RolapCubeHierarchy.java:954) at mondrian.util.FilteredIterableList$1.postNext(FilteredIterableList.java:92) at mondrian.util.FilteredIterableList$1.next(FilteredIterableList.java:108) at mondrian.util.FilteredIterableList$1.postNext(FilteredIterableList.java:93) at mondrian.util.FilteredIterableList$1.next(FilteredIterableList.java:108) at mondrian.rolap.RolapAxis$MemberList$PositionList$1.next(RolapAxis.java:342) at mondrian.rolap.RolapAxis$MemberList$PositionList$1.next(RolapAxis.java:335) at mondrian.rolap.HighDimensionsTest.execHighCardTest(HighDimensionsTest.java:179) at mondrian.rolap.HighDimensionsTest.testPromotionsTwoDimensions(HighDimensionsTest.java:59) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:40) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:90) I surmise the following cause (I may be mistaken). High-cardinality dimensions return lists which are backed by iterators, and those iterators cannot be restarted. Mondrian sometimes iterates over lists more than once, or accesses elements them in arbitrary order. The problem is not with the mondrian code, it is with the high-cardinality dimension code that claims to implement the List interface but does not. I have disabled these tests.

    Pentaho BI Platform Tracking | 8 years ago | Julian Hyde
    java.lang.RuntimeException: Element 10 has been forgotten
  2. 0

    I broke 3 of the test cases in HighCardinalityTest in my change 11947. Now testPromotionsTwoDimensions, testHead, testNonEmpty all fail. Error stack as follows: java.lang.RuntimeException: Element 10 has been forgotten at mondrian.rolap.Target$1.get(Target.java:209) at mondrian.rolap.Target$1.get(Target.java:175) at mondrian.util.TraversalList.get(TraversalList.java:52) at mondrian.util.TraversalList$1.hasNext(TraversalList.java:76) at mondrian.rolap.SqlMemberSource$1$1.hasNext(SqlMemberSource.java:483) at mondrian.rolap.RolapCubeHierarchy$NoCacheRolapCubeHierarchyMemberReader$1$1.hasNext(RolapCubeHierarchy.java:954) at mondrian.util.FilteredIterableList$1.postNext(FilteredIterableList.java:92) at mondrian.util.FilteredIterableList$1.next(FilteredIterableList.java:108) at mondrian.util.FilteredIterableList$1.postNext(FilteredIterableList.java:93) at mondrian.util.FilteredIterableList$1.next(FilteredIterableList.java:108) at mondrian.rolap.RolapAxis$MemberList$PositionList$1.next(RolapAxis.java:342) at mondrian.rolap.RolapAxis$MemberList$PositionList$1.next(RolapAxis.java:335) at mondrian.rolap.HighDimensionsTest.execHighCardTest(HighDimensionsTest.java:179) at mondrian.rolap.HighDimensionsTest.testPromotionsTwoDimensions(HighDimensionsTest.java:59) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:40) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:90) I surmise the following cause (I may be mistaken). High-cardinality dimensions return lists which are backed by iterators, and those iterators cannot be restarted. Mondrian sometimes iterates over lists more than once, or accesses elements them in arbitrary order. The problem is not with the mondrian code, it is with the high-cardinality dimension code that claims to implement the List interface but does not. I have disabled these tests.

    Pentaho BI Platform Tracking | 8 years ago | Julian Hyde
    java.lang.RuntimeException: Element 10 has been forgotten
  3. 0

    OutOfMemoryError

    Oracle Community | 10 years ago | 3004
    java.lang.RuntimeException: Service has been terminated
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

  5. 0

    Partition X does not exist at PartitionSplittingBackingMap

    Oracle Community | 7 years ago | 704908
    java.lang.RuntimeException: Service has been terminated
  6. 0

    Help! Mysterious exception during load testing (invoke on a cache item)

    Oracle Community | 7 years ago | 621136
    java.lang.RuntimeException: Service has been terminated

    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.RuntimeException

      Element 10 has been forgotten

      at mondrian.rolap.Target$1.get()
    2. mondrian.rolap
      Target$1.get
      1. mondrian.rolap.Target$1.get(Target.java:209)
      2. mondrian.rolap.Target$1.get(Target.java:175)
      2 frames
    3. mondrian.util
      TraversalList$1.hasNext
      1. mondrian.util.TraversalList.get(TraversalList.java:52)
      2. mondrian.util.TraversalList$1.hasNext(TraversalList.java:76)
      2 frames
    4. mondrian.rolap
      RolapCubeHierarchy$NoCacheRolapCubeHierarchyMemberReader$1$1.hasNext
      1. mondrian.rolap.SqlMemberSource$1$1.hasNext(SqlMemberSource.java:483)
      2. mondrian.rolap.RolapCubeHierarchy$NoCacheRolapCubeHierarchyMemberReader$1$1.hasNext(RolapCubeHierarchy.java:954)
      2 frames
    5. mondrian.util
      FilteredIterableList$1.next
      1. mondrian.util.FilteredIterableList$1.postNext(FilteredIterableList.java:92)
      2. mondrian.util.FilteredIterableList$1.next(FilteredIterableList.java:108)
      3. mondrian.util.FilteredIterableList$1.postNext(FilteredIterableList.java:93)
      4. mondrian.util.FilteredIterableList$1.next(FilteredIterableList.java:108)
      4 frames
    6. mondrian.rolap
      HighDimensionsTest.testPromotionsTwoDimensions
      1. mondrian.rolap.RolapAxis$MemberList$PositionList$1.next(RolapAxis.java:342)
      2. mondrian.rolap.RolapAxis$MemberList$PositionList$1.next(RolapAxis.java:335)
      3. mondrian.rolap.HighDimensionsTest.execHighCardTest(HighDimensionsTest.java:179)
      4. mondrian.rolap.HighDimensionsTest.testPromotionsTwoDimensions(HighDimensionsTest.java:59)
      4 frames
    7. Java RT
      DelegatingMethodAccessorImpl.invoke
      1. sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      2. sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      3. sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      3 frames
    8. IDEA
      JUnitStarter.main
      1. com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:40)
      1 frame
    9. Java RT
      DelegatingMethodAccessorImpl.invoke
      1. sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      2. sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      3. sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      3 frames
    10. IDEA
      AppMain.main
      1. com.intellij.rt.execution.application.AppMain.main(AppMain.java:90)
      1 frame