// plan with groupby plan.
private String convertCubeToFGPlan(SourceLocation loc, LOCube op, String inputAlias,
List<String> operations, MultiMap<Integer, LogicalExpressionPlan> expressionPlans)
throws FrontendException {
LOForEach foreach = new LOForEach(plan);
LOCogroup groupby = new LOCogroup(plan);
LogicalPlan innerPlan = new LogicalPlan();
LogicalRelationalOperator gen = new LOGenerate(innerPlan);
injectForeachOperator(loc, op, foreach);
// Get all column attributes from the input relation.
// Create ProjectExpression for all columns. Based on the
// dimensions specified by the user, specified columns will be attached
// to CubeDimension/RollupDimension UDF and rest will be pushed down
List<Operator> inpOpers = foreach.getPlan().getPredecessors(foreach);
List<LogicalExpressionPlan> allExprPlan = new ArrayList<LogicalExpressionPlan>();
for (Operator oper : inpOpers) {
LogicalSchema schema = new LogicalSchema();
schema = ((LogicalRelationalOperator) oper).getSchema();