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

ASF GitHub Bot commented on FLINK-5795:
---------------------------------------

Github user fhueske commented on a diff in the pull request:

    https://github.com/apache/flink/pull/3330#discussion_r101762354
  
    --- Diff: 
flink-libraries/flink-table/src/main/scala/org/apache/flink/table/codegen/CodeGenerator.scala
 ---
    @@ -1463,21 +1465,23 @@ class CodeGenerator(
         */
       def addReusableFunction(function: UserDefinedFunction): String = {
         val classQualifier = function.getClass.getCanonicalName
    -    val fieldTerm = s"function_${classQualifier.replace('.', '$')}"
    +    val functionSerializedData = serialize(function)
    +    val fieldTerm =
    +      s"""
    +         |function_${classQualifier.replace('.', 
'$')}_${DigestUtils.md5Hex(functionSerializedData)}
    +       """.stripMargin
     
         val fieldFunction =
           s"""
             |transient $classQualifier $fieldTerm = null;
             |""".stripMargin
         reusableMemberStatements.add(fieldFunction)
     
    -    val constructorTerm = s"constructor_${classQualifier.replace('.', 
'$')}"
         val constructorAccessibility =
           s"""
    -        |java.lang.reflect.Constructor $constructorTerm =
    -        |  $classQualifier.class.getDeclaredConstructor();
    -        |$constructorTerm.setAccessible(true);
    -        |$fieldTerm = ($classQualifier) $constructorTerm.newInstance();
    +         |$fieldTerm = ($classQualifier)
    +         |org.apache.flink.table.functions.utils.UserDefinedFunctionUtils
    --- End diff --
    
    replace hardcoded class name by 
`${UserDefinedFunctionUtils.getClass.getName.stripSuffix("$")}`


> Improve “UDTF" to support constructor with parameter.
> -----------------------------------------------------
>
>                 Key: FLINK-5795
>                 URL: https://issues.apache.org/jira/browse/FLINK-5795
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Table API & SQL
>            Reporter: sunjincheng
>            Assignee: sunjincheng
>




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

Reply via email to