You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Michael Armbrust (JIRA)" <ji...@apache.org> on 2015/10/09 21:01:05 UTC
[jira] [Created] (SPARK-11032) Failure to resolve having correctly
Michael Armbrust created SPARK-11032:
----------------------------------------
Summary: 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
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-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org