@Override
    public RelNode visit(HiveAggregate aggregate) {
      // capture the aggregate RelNode to grab information off of it.
      if (this.aggregateRel == null) {
        this.aggregateRel = aggregate;
      }
      return super.visit(aggregate);
    }
The SubQueryRelNodeShuttle walks through the RelNodes within the RexSubQuery.
The CorrelationIds can be found within the RexNodes inside the RelNodes, so
we call the InsideRexSubQueryVisitor to fetch them. This visitor will hold the
array of correlationIds and keep the composite list of Ids across RelNodes
ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/correlation/CorrelationInfoVisitor.java