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

Jing Zhang closed FLINK-30617.
------------------------------
      Assignee: luoyuxia
    Resolution: Fixed

> Wrong data type for null literal with cast in Hive dialect
> ----------------------------------------------------------
>
>                 Key: FLINK-30617
>                 URL: https://issues.apache.org/jira/browse/FLINK-30617
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Connectors / Hive
>    Affects Versions: 1.16.0
>            Reporter: luoyuxia
>            Assignee: luoyuxia
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.17.0
>
>
> When in hive dialect, it's found that the expression `cast null as bigint` 
> will result in string type. Then it will cause the following sql fail:
> {code:java}
> create table t(a ARRAY<BIGINT>)
> insert into t select array(cast(null as bigint)) {code}
> The exception is:
> {code:java}
> org.apache.flink.table.api.ValidationException: Column types of query result 
> and sink for 'test-catalog.default.t' do not match.
> Cause: Incompatible types for sink column 'a' at position 0.Query schema: 
> [_o__c0: ARRAY<STRING>]
> Sink schema:  [a: ARRAY<BIGINT>] {code}
> Introduce by FLINK-26474, after that we will fold `cast null as bigint` to 
> `null `which will then considered as the null type. And for null type as 
> argument, the function `array` will get a result type of array<string>. 



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

Reply via email to