[
https://issues.apache.org/jira/browse/FLINK-4883?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15728598#comment-15728598
]
ASF GitHub Bot commented on FLINK-4883:
---------------------------------------
Github user aljoscha commented on the issue:
https://github.com/apache/flink/pull/2729
The problem is that this doesn't even work if the user correctly implements
a thread safe UDF. If the UDF is an object then things such as the
`RuntimeContext` will be the same for different subtasks because there is only
one instance of the UDF.
> Prevent UDFs implementations through Scala singleton objects
> ------------------------------------------------------------
>
> Key: FLINK-4883
> URL: https://issues.apache.org/jira/browse/FLINK-4883
> Project: Flink
> Issue Type: Bug
> Reporter: Stefan Richter
> Assignee: Renkai Ge
>
> Currently, user can create and use UDFs in Scala like this:
> {code}
> object FlatMapper extends RichCoFlatMapFunction[Long, String, (Long, String)]
> {
> ...
> }
> {code}
> However, this leads to problems as the UDF is now a singleton that Flink
> could use across several operator instances, which leads to job failures. We
> should detect and prevent the usage of singleton UDFs.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)