[
https://issues.apache.org/jira/browse/FLINK-7206?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16134786#comment-16134786
]
ASF GitHub Bot commented on FLINK-7206:
---------------------------------------
Github user wuchong commented on a diff in the pull request:
https://github.com/apache/flink/pull/4355#discussion_r134138469
--- Diff:
flink-libraries/flink-table/src/main/scala/org/apache/flink/table/codegen/CodeGenerator.scala
---
@@ -1646,4 +1649,86 @@ abstract class CodeGenerator(
fieldTerm
}
+
+ /**
+ * Adds a reusable class to the member area of the generated
[[Function]].
+ */
+ def addReusableClass(clazz: Class[_], fieldTerm: String): Unit = {
+ val field =
+ s"""
+ |transient ${clazz.getCanonicalName} $fieldTerm = null;
+ |""".stripMargin
+ reusableMemberStatements.add(field)
+ }
+
+ /**
+ * Adds a reusable [[DataViewConfig]] to the member area of the
generated [[Function]].
+ *
+ * @param indices indices of aggregate functions.
+ * @param ctxTerm field name of runtime context.
+ * @param accConfig data view config which contains id, field and
StateDescriptos.
+ * @return statements to create [[MapView]] or [[ListView]].
+ */
+ def addReusableDataViewConfig(
--- End diff --
The `addReusableDataViewConfig` should be in `AggregateCodeGenerator`. And
I would like to change this method to `addReusableDataView(spec: DataViewSpec):
String`, the returned String is the dataview member variable term. And the
dataview creation code can be added into `reusableDataViewStatements`. And the
code of `reusableDataViewStatements` can be added to `initialize(ctx)` (or
`open(ctx)` as I suggested) at last.
> Implementation of DataView to support state access for UDAGG
> ------------------------------------------------------------
>
> Key: FLINK-7206
> URL: https://issues.apache.org/jira/browse/FLINK-7206
> Project: Flink
> Issue Type: Sub-task
> Components: Table API & SQL
> Reporter: Kaibo Zhou
> Assignee: Kaibo Zhou
>
> Implementation of MapView and ListView to support state access for UDAGG.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)