[ 
https://issues.apache.org/jira/browse/CALCITE-5874?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ran Tao updated CALCITE-5874:
-----------------------------
    Description: 
some sql functions have same sqlkind and name but with different return types.

e.g. Soundex function, calcite and bigquery return varchar(4), however spark 
return non-fixed length. If we want reuse Soundex, we can only use create 
method to pass all parameters, it's a bit bloated. 

If we add a `withReturnTypeInference()`, we can simply use this to copy from 
existed functions.

  was:
some sql functions have same sqlkind and name but with different return types.

e.g. Soundex function, calcite and bigquery return varchar(4), however spark 
return non-fixed length. If we want reuse Soundex, we can only use create 
method to pass all parameters, it's a bit bloated. 

If we add a `withReturnTypeInference`, we can simply use this to copy from 
existed functions.


> Add a withReturnTypeInference copy method for SqlBasicFunction
> --------------------------------------------------------------
>
>                 Key: CALCITE-5874
>                 URL: https://issues.apache.org/jira/browse/CALCITE-5874
>             Project: Calcite
>          Issue Type: Improvement
>          Components: core
>    Affects Versions: 1.34.0
>            Reporter: Ran Tao
>            Assignee: Ran Tao
>            Priority: Major
>             Fix For: 1.36.0
>
>
> some sql functions have same sqlkind and name but with different return types.
> e.g. Soundex function, calcite and bigquery return varchar(4), however spark 
> return non-fixed length. If we want reuse Soundex, we can only use create 
> method to pass all parameters, it's a bit bloated. 
> If we add a `withReturnTypeInference()`, we can simply use this to copy from 
> existed functions.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to