-
- Downloads
[SPARK-18632][SQL] AggregateFunction should not implement ImplicitCastInputTypes
## What changes were proposed in this pull request? `AggregateFunction` currently implements `ImplicitCastInputTypes` (which enables implicit input type casting). There are actually quite a few situations in which we don't need this, or require more control over our input. A recent example is the aggregate for `CountMinSketch` which should only take string, binary or integral types inputs. This PR removes `ImplicitCastInputTypes` from the `AggregateFunction` and makes a case-by-case decision on what kind of input validation we should use. ## How was this patch tested? Refactoring only. Existing tests. Author: Herman van Hovell <hvanhovell@databricks.com> Closes #16066 from hvanhovell/SPARK-18632.
Showing
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/ApproximatePercentile.scala 4 additions, 3 deletions...atalyst/expressions/aggregate/ApproximatePercentile.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/Average.scala 1 addition, 1 deletion...he/spark/sql/catalyst/expressions/aggregate/Average.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/CentralMomentAgg.scala 2 additions, 1 deletion...sql/catalyst/expressions/aggregate/CentralMomentAgg.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/Corr.scala 2 additions, 1 deletion...pache/spark/sql/catalyst/expressions/aggregate/Corr.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/Count.scala 0 additions, 3 deletions...ache/spark/sql/catalyst/expressions/aggregate/Count.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/CountMinSketchAgg.scala 3 additions, 2 deletions...ql/catalyst/expressions/aggregate/CountMinSketchAgg.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/Covariance.scala 2 additions, 1 deletion...spark/sql/catalyst/expressions/aggregate/Covariance.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/First.scala 18 additions, 8 deletions...ache/spark/sql/catalyst/expressions/aggregate/First.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/HyperLogLogPlusPlus.scala 0 additions, 2 deletions.../catalyst/expressions/aggregate/HyperLogLogPlusPlus.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/Last.scala 18 additions, 8 deletions...pache/spark/sql/catalyst/expressions/aggregate/Last.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/Max.scala 0 additions, 3 deletions...apache/spark/sql/catalyst/expressions/aggregate/Max.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/Min.scala 0 additions, 3 deletions...apache/spark/sql/catalyst/expressions/aggregate/Min.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/Percentile.scala 5 additions, 4 deletions...spark/sql/catalyst/expressions/aggregate/Percentile.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/PivotFirst.scala 0 additions, 2 deletions...spark/sql/catalyst/expressions/aggregate/PivotFirst.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/Sum.scala 1 addition, 1 deletion...apache/spark/sql/catalyst/expressions/aggregate/Sum.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/collect.scala 0 additions, 2 deletions...he/spark/sql/catalyst/expressions/aggregate/collect.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/aggregate/interfaces.scala 1 addition, 1 deletion...spark/sql/catalyst/expressions/aggregate/interfaces.scala
- sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/windowExpressions.scala 0 additions, 2 deletions...he/spark/sql/catalyst/expressions/windowExpressions.scala
- sql/core/src/main/scala/org/apache/spark/sql/execution/aggregate/TypedAggregateExpression.scala 0 additions, 2 deletions...rk/sql/execution/aggregate/TypedAggregateExpression.scala
- sql/core/src/main/scala/org/apache/spark/sql/execution/aggregate/udaf.scala 1 addition, 1 deletion...scala/org/apache/spark/sql/execution/aggregate/udaf.scala
Loading
Please register or sign in to comment