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

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

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

    https://github.com/apache/flink/pull/3623#discussion_r110379666
  
    --- Diff: 
flink-libraries/flink-table/src/main/scala/org/apache/flink/table/functions/TableFunction.scala
 ---
    @@ -135,8 +135,11 @@ abstract class TableFunction[T] extends 
UserDefinedFunction {
         *
         * @param arguments arguments of a function call (only literal arguments
         *                  are passed, nulls for non-literal ones)
    +    * @param typeInfos The type information of the parameters. only valid 
argument types
    +    *                  are passed, nulls for non-valid ones.
         * @return [[TypeInformation]] of result type or null if Flink should 
determine the type
         */
    -  def getResultType(arguments: java.util.List[AnyRef]): TypeInformation[T] 
= null
    +  def getResultType(arguments: java.util.List[AnyRef],
    +                    typeInfos: java.util.List[TypeInformation[_]]): 
TypeInformation[T] = null
    --- End diff --
    
    I was thinking about this again. Maybe we should pass a `List[Class[_]]` 
rather than `List[TypeInformation[_]]`. The `eval` method receives regular 
classes (or primitives) and does not have to deal with type informations.
    What do you think, @clarkyzl and @KurtYoung?


> Support dynamic schema in Table Function
> ----------------------------------------
>
>                 Key: FLINK-6196
>                 URL: https://issues.apache.org/jira/browse/FLINK-6196
>             Project: Flink
>          Issue Type: Improvement
>          Components: Table API & SQL
>            Reporter: Zhuoluo Yang
>            Assignee: Zhuoluo Yang
>
> In many of our use cases. We have to decide the schema of a UDTF at the run 
> time. For example. udtf('c1, c2, c3') will generate three columns for a 
> lateral view. 
> Most systems such as calcite and hive support this feature. However, the 
> current implementation of flink didn't implement the feature correctly.



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

Reply via email to