[ https://issues.apache.org/jira/browse/SPARK-11032?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Michael Armbrust resolved SPARK-11032. -------------------------------------- Resolution: Fixed Fix Version/s: 1.6.0 Issue resolved by pull request 9105 [https://github.com/apache/spark/pull/9105] > Failure to resolve having correctly > ----------------------------------- > > Key: SPARK-11032 > URL: https://issues.apache.org/jira/browse/SPARK-11032 > Project: Spark > Issue Type: Bug > Components: SQL > Affects Versions: 1.5.1, 1.6.0 > Reporter: Michael Armbrust > Priority: Blocker > Fix For: 1.6.0 > > > This is a regression from Spark 1.4 > {code} > Seq(("michael", 30)).toDF("name", "age").registerTempTable("people") > sql("SELECT MIN(t0.age) FROM (SELECT * FROM PEOPLE WHERE age > 0) t0 > HAVING(COUNT(1) > 0)").explain(true) > == Parsed Logical Plan == > 'Filter cast(('COUNT(1) > 0) as boolean) > 'Project [unresolvedalias('MIN('t0.age))] > 'Subquery t0 > 'Project [unresolvedalias(*)] > 'Filter ('age > 0) > 'UnresolvedRelation [PEOPLE], None > == Analyzed Logical Plan == > _c0: int > Filter cast((count(1) > cast(0 as bigint)) as boolean) > Aggregate [min(age#6) AS _c0#9] > Subquery t0 > Project [name#5,age#6] > Filter (age#6 > 0) > Subquery people > Project [_1#3 AS name#5,_2#4 AS age#6] > LocalRelation [_1#3,_2#4], [[michael,30]] > == Optimized Logical Plan == > Filter (count(1) > 0) > Aggregate [min(age#6) AS _c0#9] > Project [_2#4 AS age#6] > Filter (_2#4 > 0) > LocalRelation [_1#3,_2#4], [[michael,30]] > == Physical Plan == > Filter (count(1) > 0) > TungstenAggregate(key=[], > functions=[(min(age#6),mode=Final,isDistinct=false)], output=[_c0#9]) > TungstenExchange SinglePartition > TungstenAggregate(key=[], > functions=[(min(age#6),mode=Partial,isDistinct=false)], output=[min#12]) > TungstenProject [_2#4 AS age#6] > Filter (_2#4 > 0) > LocalTableScan [_1#3,_2#4], [[michael,30]] > Code Generation: true > {code} > {code} > Caused by: java.lang.UnsupportedOperationException: Cannot evaluate > expression: count(1) > at > org.apache.spark.sql.catalyst.expressions.Unevaluable$class.eval(Expression.scala:188) > at > org.apache.spark.sql.catalyst.expressions.Count.eval(aggregates.scala:156) > at > org.apache.spark.sql.catalyst.expressions.BinaryExpression.eval(Expression.scala:327) > at > org.apache.spark.sql.catalyst.expressions.InterpretedPredicate$$anonfun$create$2.apply(predicates.scala:38) > at > org.apache.spark.sql.catalyst.expressions.InterpretedPredicate$$anonfun$create$2.apply(predicates.scala:38) > at > org.apache.spark.sql.execution.Filter$$anonfun$4$$anonfun$apply$4.apply(basicOperators.scala:117) > at > org.apache.spark.sql.execution.Filter$$anonfun$4$$anonfun$apply$4.apply(basicOperators.scala:115) > at scala.collection.Iterator$$anon$14.hasNext(Iterator.scala:390) > at scala.collection.Iterator$$anon$11.hasNext(Iterator.scala:327) > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@spark.apache.org For additional commands, e-mail: issues-h...@spark.apache.org