[ https://issues.apache.org/jira/browse/FLINK-6242?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15973422#comment-15973422 ]
ASF GitHub Bot commented on FLINK-6242: --------------------------------------- Github user fhueske commented on a diff in the pull request: https://github.com/apache/flink/pull/3735#discussion_r111992686 --- Diff: flink-libraries/flink-table/src/main/scala/org/apache/flink/table/runtime/aggregate/DataSetAggFunction.scala --- @@ -21,44 +21,48 @@ import java.lang.Iterable import org.apache.flink.api.common.functions.RichGroupReduceFunction import org.apache.flink.configuration.Configuration -import org.apache.flink.table.functions.{Accumulator, AggregateFunction} +import org.apache.flink.table.codegen.{Compiler, GeneratedAggregationsFunction} import org.apache.flink.types.Row import org.apache.flink.util.{Collector, Preconditions} +import org.slf4j.LoggerFactory /** * [[RichGroupReduceFunction]] to compute aggregates that do not support pre-aggregation for batch * (DataSet) queries. * - * @param aggregates The aggregate functions. - * @param aggInFields The positions of the aggregation input fields. + * @param genAggregations Code-generated [[GeneratedAggregations]] * @param gkeyOutMapping The mapping of group keys between input and output positions. - * @param aggOutMapping The mapping of aggregates to output positions. * @param groupingSetsMapping The mapping of grouping set keys between input and output positions. - * @param finalRowArity The arity of the final resulting row. */ class DataSetAggFunction( - private val aggregates: Array[AggregateFunction[_ <: Any]], - private val aggInFields: Array[Array[Int]], - private val aggOutMapping: Array[(Int, Int)], + private val genAggregations: GeneratedAggregationsFunction, private val gkeyOutMapping: Array[(Int, Int)], --- End diff -- It would be good if we could parameterize the method that generates the code such that we can do the grouping keys and grouping set copies with `GeneratedAggregations.setForwardFields()`. This should be possible as it is actually just setting constant boolean flags at certain positions in the output Row. > codeGen DataSet Goupingwindow Aggregates > ---------------------------------------- > > Key: FLINK-6242 > URL: https://issues.apache.org/jira/browse/FLINK-6242 > Project: Flink > Issue Type: Sub-task > Components: Table API & SQL > Reporter: Shaoxuan Wang > Assignee: Shaoxuan Wang > -- This message was sent by Atlassian JIRA (v6.3.15#6346)