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

Julian Hyde commented on CALCITE-2569:
--------------------------------------

I believe I already migrated the window table functions, as part of the change.

The most surprising thing about the change is that a table function must now 
return CURSOR (i.e. if you call {{getReturnTypeInference()}}). Getting the row 
type is a new API call (\{{getRowTypeInference()}}).

> UDFs that are table functions must implement SqlTableFunction and have CURSOR 
> as their return type
> --------------------------------------------------------------------------------------------------
>
>                 Key: CALCITE-2569
>                 URL: https://issues.apache.org/jira/browse/CALCITE-2569
>             Project: Calcite
>          Issue Type: Bug
>            Reporter: Julian Hyde
>            Assignee: Julian Hyde
>            Priority: Major
>
> UDFs that are table functions must implement SqlTableFunction and have CURSOR 
> as their return type,
> Validate that table functions are not used in contexts that require scalar 
> functions, such as the SELECT clause.
> Change operand type ANY to mean 'scalar expression of any type (but not a 
> cursor)', and add operand type IGNORE to mean skip validation - for an 
> operand that is not an expression. TABLE is one of the few operators that 
> accepts a CURSOR operand.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to