[ https://issues.apache.org/jira/browse/CARBONDATA-1940?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Manish Gupta resolved CARBONDATA-1940. -------------------------------------- Resolution: Fixed Assignee: anubhav tarar Fix Version/s: 1.3.0 > Select query on preaggregate table created with group by clause throws exception: Column does not exist > ------------------------------------------------------------------------------------------------------- > > Key: CARBONDATA-1940 > URL: https://issues.apache.org/jira/browse/CARBONDATA-1940 > Project: CarbonData > Issue Type: Bug > Components: data-query > Affects Versions: 1.3.0 > Environment: spark2.1 > Reporter: Geetika Gupta > Assignee: anubhav tarar > Priority: Major > Fix For: 1.3.0 > > Time Spent: 8h 20m > Remaining Estimate: 0h > > We create a carbon table > spark.sql( > s""" > | CREATE TABLE carbon_table( > | shortField SHORT, > | intField INT, > | bigintField LONG, > | doubleField DOUBLE, > | stringField STRING, > | timestampField TIMESTAMP, > | decimalField DECIMAL(18,2), > | dateField DATE, > | charField CHAR(5), > | floatField FLOAT, > | complexData ARRAY<STRING> > | ) > | STORED BY 'carbondata' > | TBLPROPERTIES('SORT_COLUMNS'='', 'DICTIONARY_INCLUDE'='dateField, charField') > """.stripMargin) > Pre-aggregate create command: > spark.sql("create datamap abcaggnew on table carbon_table using 'org.apache.carbondata.datamap.AggregateDataMapHandler' as select shortField, sum(shortField) from carbon_table group by shortfield,stringField").show > when we perform query on preaggregate table using > spark.sql("select shortField, sum(shortField) from carbon_table group by shortfield,stringField").show > It shows the following error: > Exception in thread "main" org.apache.spark.sql.AnalysisException: Column does not exists in Pre Aggregate table; > at org.apache.spark.sql.hive.CarbonPreAggregateQueryRules.getChildAttributeReference(CarbonPreAggregateRules.scala:491) > at org.apache.spark.sql.hive.CarbonPreAggregateQueryRules$$anonfun$13$$anonfun$apply$4.applyOrElse(CarbonPreAggregateRules.scala:788) > at org.apache.spark.sql.hive.CarbonPreAggregateQueryRules$$anonfun$13$$anonfun$apply$4.applyOrElse(CarbonPreAggregateRules.scala:786) > at org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$3.apply(TreeNode.scala:288) > at org.apache.spark.sql.catalyst.trees.TreeNode$$anonfun$3.apply(TreeNode.scala:288) > at org.apache.spark.sql.catalyst.trees.CurrentOrigin$.withOrigin(TreeNode.scala:70) > at org.apache.spark.sql.catalyst.trees.TreeNode.transformDown(TreeNode.scala:287) > at org.apache.spark.sql.catalyst.trees.TreeNode.transform(TreeNode.scala:277) > at org.apache.spark.sql.hive.CarbonPreAggregateQueryRules$$anonfun$13.apply(CarbonPreAggregateRules.scala:786) > at org.apache.spark.sql.hive.CarbonPreAggregateQueryRules$$anonfun$13.apply(CarbonPreAggregateRules.scala:785) > at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234) > at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:234) > at scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59) > at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:48) > at scala.collection.TraversableLike$class.map(TraversableLike.scala:234) > at scala.collection.AbstractTraversable.map(Traversable.scala:104) > at org.apache.spark.sql.hive.CarbonPreAggregateQueryRules.getUpdatedExpressions(CarbonPreAggregateRules.scala:785) > at org.apache.spark.sql.hive.CarbonPreAggregateQueryRules$$anonfun$transformPreAggQueryPlan$1.applyOrElse(CarbonPreAggregateRules.scala:547) > at org.apache.spark.sql.hive.CarbonPreAggregateQueryRules$$anonfun$transformPreAggQueryPlan$1.applyOrElse(CarbonPreAggregateRules.scala:540) -- This message was sent by Atlassian JIRA (v7.6.3#76005) |
Free forum by Nabble | Edit this page |