Github user ravipesala commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/1728#discussion_r159435962
--- Diff:
integration/spark2/src/main/scala/org/apache/spark/sql/hive/CarbonPreAggregateRules.scala
---
@@ -18,28 +18,46 @@
package org.apache.spark.sql.hive
import scala.collection.JavaConverters._
-import scala.collection.mutable.ArrayBuffer
+import scala.collection.mutable
-import org.apache.spark.SPARK_VERSION
import org.apache.spark.sql._
-import org.apache.spark.sql.CarbonExpressions.{CarbonScalaUDF,
CarbonSubqueryAlias, MatchCast, MatchCastExpression}
import org.apache.spark.sql.catalyst.TableIdentifier
+import org.apache.spark.sql.CarbonExpressions.{CarbonScalaUDF,
CarbonSubqueryAlias, MatchCastExpression}
import org.apache.spark.sql.catalyst.analysis.{UnresolvedAlias,
UnresolvedAttribute}
-import org.apache.spark.sql.catalyst.expressions.{Alias, Attribute,
AttributeReference, Cast, Divide, Expression, Literal, NamedExpression,
ScalaUDF, SortOrder}
-import org.apache.spark.sql.catalyst.expressions.aggregate._
+import org.apache.spark.sql.catalyst.expressions.{Alias,
AttributeReference, Cast, Divide, Expression, Literal, NamedExpression,
ScalaUDF, SortOrder}
+import org.apache.spark.sql.catalyst.expressions.aggregate.{Count, _}
import org.apache.spark.sql.catalyst.plans.logical._
import org.apache.spark.sql.catalyst.rules.Rule
+import
org.apache.spark.sql.execution.command.preaaggregate.PreAggregateUtil
import org.apache.spark.sql.execution.datasources.{FindDataSourceTable,
LogicalRelation}
+import org.apache.spark.sql.parser.CarbonSpark2SqlParser
import org.apache.spark.sql.types._
-import org.apache.spark.sql.util.CarbonException
import org.apache.spark.util.CarbonReflectionUtils
import org.apache.carbondata.core.constants.CarbonCommonConstants
import
org.apache.carbondata.core.metadata.schema.table.{AggregationDataMapSchema,
CarbonTable, DataMapSchema}
+import org.apache.carbondata.core.metadata.schema.table.column.ColumnSchema
import org.apache.carbondata.core.preagg.{AggregateTableSelector,
QueryColumn, QueryPlan}
import org.apache.carbondata.core.util.{CarbonUtil, ThreadLocalSessionInfo}
-import org.apache.carbondata.spark.util.CarbonScalaUtil
+/**
+ * model class to store aggregate expression logical plan
+ * and its column schema mapping
+ * @param logicalPlan
+ * logical plan of aggregate expression
+ * @param columnSchema
+ * column schema from table
+ */
+case class AggExpToColumnMappingModel(var logicalPlan: LogicalPlan,
--- End diff --
Move `var logicalPlan: LogicalPlan` to next line
---