Uploaded image for project: 'Pentaho Analysis - Mondrian'
  1. Pentaho Analysis - Mondrian
  2. MONDRIAN-555

Compound slicer counts cells twice in certain cases


    • Type: Bug
    • Status: Open
    • Severity: High
    • Resolution: Unresolved
    • Affects Version/s: 3.2.0 GA (3.6.0 GA Suite Release)
    • Fix Version/s: Backlog
    • Component/s: None
    • Labels:
    • Notice:
      When an issue is open, the "Fix Version/s" field conveys a target, not necessarily a commitment. When an issue is closed, the "Fix Version/s" field conveys the version that the issue was fixed in.


      I am implementing compound slicer functionality now, and just about to check in. A compound slicer is a WHERE clause that contains a set of members or tuples. If the members or tuples do not overlap, mondrian's behavior is correct.

      But if they overlap, mondrian will include the cells in the result twice, and that is inconsistent with the results that SSAS 2005 produces.

      Here are some examples where the regions overlap.
      1. A list of members contains the same member twice, e.g.

      WHERE {[Product].[Food], [Product].[Drink], [Product].[Food]}

      2. A list of members contains one member that is a child of another, e.g.

      WHERE {[Product].[Food], [Product].[Food].[Cheese]}

      3. A list of tuples can have more complicated overlaps, e.g.

      WHERE {([Store].[TX], [Product].[Food]), ([Store].[TX].[San Antonio], [Product].[Beer]}

      seems to overlap but does not.

      The right thing to do is to view the tuples as collections of predicates - column=value conditions combined with ANDs and ORs - to be pushed into the WHERE clause of the query sent to the fact table. Currently Mondrian evaluates compound slicers using basically the 'by hand' method - create a calculated member whose calculation is Aggregate( <list of members> ) and put it in the WHERE clause - except that it allows calculations that are tuples.


          Issue Links



              • Assignee:
                jhyde Julian Hyde
              • Votes:
                2 Vote for this issue
                3 Start watching this issue


                • Created: