[ 
https://issues.apache.org/jira/browse/FLINK-5792?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15869395#comment-15869395
 ] 

Fabian Hueske commented on FLINK-5792:
--------------------------------------

I agree, it makes sense to ship a serialized UDF object.
Regular Flink function are also serialized and distributed to the workers.

[~sunjincheng121] can you explain a bit how you want to distribute the UDF?
I see two options:
1. make the UDF a member of wrapping function. It might be a bit tricky to pass 
the reference into the code-gen'd function.
2. add a final byte[] field into the code-gen'd function that holds the 
serialized UDF object and deserialize during initialization. This will blow up 
the code-gen'd string but might work well.

Best, Fabian

> Improve “UDF/UDTF" to support constructor with parameter.
> ---------------------------------------------------------
>
>                 Key: FLINK-5792
>                 URL: https://issues.apache.org/jira/browse/FLINK-5792
>             Project: Flink
>          Issue Type: Improvement
>          Components: Table API & SQL
>            Reporter: sunjincheng
>            Assignee: sunjincheng
>
> Currently UDF/UDTF in the codegen phase using a nonparametric constructor to 
> create the instance, causing the user can not include the state value in the 
> UDF/UDTF. The UDF/UDTF's codegen phase can use a serialized mechanism so that 
> the UDTF can contain state values.
> 1. UserDefinedFunction inherits Serializable.
> 2. Modify CodeGenerator about UDF/UDTF part.
> 3. Modify TableAPI about UDF/UDTF
> 4. Add Test.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to