Github user walterddr commented on a diff in the pull request:
https://github.com/apache/flink/pull/5555#discussion_r183222267
--- Diff:
flink-libraries/flink-table/src/main/scala/org/apache/flink/table/codegen/AggregationCodeGenerator.scala
---
@@ -151,8 +157,15 @@ class AggregationCodeGenerator(
}
}
- // initialize and create data views
- addReusableDataViews()
+ // get distinct filter of acc fields for each aggregate functions
+ val distinctAccType = s"${classOf[DistinctAccumulator[_, _]].getName}"
+ val isDistinctAggs = distinctAggs.map(_.nonEmpty)
--- End diff --
Hmm I tried to generate MapViewSpec in codegen but
`AggregationCodeGenerator.generateAggregations` call signature seems to miss
the typeinfo for accumulator (`accTypes` only shows the accumulator type, not
the `PojoField` info).
I can certainly changed to a more simple: `DistinctAccumulator[Object,
Long]` but I think there's pros and cons, also making a `MapTypeInfo` for plain
`Object` seems funny to me. How about we leave it to the future optimization.
---