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

luoyuxia updated FLINK-30452:
-----------------------------
    Description: 
While calling Hive function, if the argument is void type, it will be 
[considered as string 
type|[https://github.com/apache/flink/blob/2e5cac1f31aa571276df20e24889994672692a89/flink-connectors/flink-connector-hive/src/main/java/org/apache/flink/table/functions/hive/conversion/HiveInspectors.java#L553]],
 which may bring wrong type inference and thus may well cause other problems.

 

For example, 
{code:java}
timestamp(if(a = null, null, a)
{code}
the argument for function `if` is null and a, null is void type,  a is bigint 
type, so the inferred return type should be bigint.  But we consider the void 
type as string type, the return type inferred will be string according to the 
`if` function inference logic.

 

> Wrong argument type is used when call Hive's function
> -----------------------------------------------------
>
>                 Key: FLINK-30452
>                 URL: https://issues.apache.org/jira/browse/FLINK-30452
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Connectors / Hive
>            Reporter: luoyuxia
>            Priority: Major
>
> While calling Hive function, if the argument is void type, it will be 
> [considered as string 
> type|[https://github.com/apache/flink/blob/2e5cac1f31aa571276df20e24889994672692a89/flink-connectors/flink-connector-hive/src/main/java/org/apache/flink/table/functions/hive/conversion/HiveInspectors.java#L553]],
>  which may bring wrong type inference and thus may well cause other problems.
>  
> For example, 
> {code:java}
> timestamp(if(a = null, null, a)
> {code}
> the argument for function `if` is null and a, null is void type,  a is bigint 
> type, so the inferred return type should be bigint.  But we consider the void 
> type as string type, the return type inferred will be string according to the 
> `if` function inference logic.
>  



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

Reply via email to