@Override
  protected PlanInfo protGetPlanInfo(ExecutionContext context)
      throws TypeMismatchException, NameResolutionException {
    PlanInfo result = new PlanInfo();
    IndexInfo[] indexInfo = getIndexInfo(context);
    if (indexInfo == null) {
      return result;
    }
    Support.Assert(indexInfo.length == 1,
        "For a CompiledUndefined  we cannot have a join of two indexes. There should be only a single index to use");
    result.indexes.add(indexInfo[0]._index);
    result.evalAsFilter = true;
    return result;
  }
evaluate as a filter, producing an intermediate result set. This may require iteration if there
is no index available. Asif :The boolean true implies that CompiledComparsion when existing on
its own always requires a Complete expansion to top level iterators. This flag can get toggled
to false only from inside a GroupJunction

<p>
param intermediateResults if this parameter is provided, and we have to iterate, then iterate
over this result set instead of the entire base collection.
geode-core/src/main/java/org/apache/geode/cache/query/internal/CompiledUndefined.java