Josh Rosen created SPARK-10941:
----------------------------------

             Summary: .Refactor AggregateFunction2 and AlgebraicAggregate 
interfaces to improve code clarity
                 Key: SPARK-10941
                 URL: https://issues.apache.org/jira/browse/SPARK-10941
             Project: Spark
          Issue Type: Improvement
          Components: SQL
            Reporter: Josh Rosen
            Assignee: Josh Rosen


Spark SQL's new AlgebraicAggregate interface is confusingly named.

AlgebraicAggregate inherits from AggregateFunction2, adds a new set of methods, 
then effectively bans the use of the inherited methods. This is really 
confusing. I think that it's an anti-pattern / bad code smell if you end up 
inheriting and wanting to remove methods inherited from the superclass.

I think that we should re-name this class and should refactor the class 
hierarchy so that there's a clear distinction between which parts of the code 
work with imperative aggregate functions vs. expression-based aggregates.



--
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

Reply via email to