Class CachedExistsFunDef

  • All Implemented Interfaces:
    FunDef

    public class CachedExistsFunDef
    extends FunDefBase
    CachedExistsFunDef is a replacement for the Exists MDX function that Analyzer uses for projecting tuples for subtotals, Top10 and other calculations. The MDX Analyzer generates uses Exists on the same named set many times within the same query. This can be very computationally expensive because every call to Exists will scan the input set. After generating a cache, the tuples that match the Exists criteria can be looked up without any scans.
    Author:
    Benny Chow
    • Method Detail

      • compileCall

        public Calc compileCall​(ResolvedFunCall call,
                                ExpCompiler compiler)
        Description copied from interface: FunDef
        Converts a call to this function into executable objects.

        The result must implement the appropriate interface for the result type. For example, a function which returns an integer must return an object which implements IntegerCalc.

        Specified by:
        compileCall in interface FunDef
        Overrides:
        compileCall in class FunDefBase