You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "luoyuxia (Jira)" <ji...@apache.org> on 2022/07/18 03:00:00 UTC
[jira] [Updated] (FLINK-27013) Hive dialect supports IS_DISTINCT_FROM
[ https://issues.apache.org/jira/browse/FLINK-27013?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
luoyuxia updated FLINK-27013:
-----------------------------
Description:
It'll throw the exception with error message "Unsupported call: IS DISTINCT FROM(STRING, STRING) " with the following SQL in Hive dialect:
{code:java}
create table test(x string, y string);
select x <=> y, (x <=> y) = false from test; {code}
And I found the IS_NOT_DISTINCT_FROM is supported in ExprCodeGenerator.scala, but IS_ DISTINCT_FROM is not. The IS_ DISTINCT_FROM should also be implemented in ExprCodeGenerator.
Then, I also found such sql can work in Flink SQL
{code:java}
f63 IS DISTINCT FROM f64 {code}
The reason is such sql will be converted to "AND(OR(IS NOT NULL($63), IS NOT NULL($64)), IS NOT TRUE(=($63, $64)))" intead of "IS_DISTINCT_FROM".
was:
It'll throw the exception with error message "Unsupported call: IS DISTINCT FROM(STRING, STRING) " with the following SQL in Hive dialect:
{code:java}
create table test(x string, y string);
select x <=> y, (x <=> y) = false from test; {code}
And I found the IS_NOT_DISTINCT_FROM is supported in ExprCodeGenerator.scala, but IS_ DISTINCT_FROM is not. The IS_ DISTINCT_FROM should also be implemented in ExprCodeGenerator.
> Hive dialect supports IS_DISTINCT_FROM
> --------------------------------------
>
> Key: FLINK-27013
> URL: https://issues.apache.org/jira/browse/FLINK-27013
> Project: Flink
> Issue Type: Sub-task
> Components: Connectors / Hive
> Reporter: luoyuxia
> Priority: Major
> Labels: pull-request-available
>
> It'll throw the exception with error message "Unsupported call: IS DISTINCT FROM(STRING, STRING) " with the following SQL in Hive dialect:
>
> {code:java}
> create table test(x string, y string);
> select x <=> y, (x <=> y) = false from test; {code}
>
> And I found the IS_NOT_DISTINCT_FROM is supported in ExprCodeGenerator.scala, but IS_ DISTINCT_FROM is not. The IS_ DISTINCT_FROM should also be implemented in ExprCodeGenerator.
>
> Then, I also found such sql can work in Flink SQL
>
> {code:java}
> f63 IS DISTINCT FROM f64 {code}
> The reason is such sql will be converted to "AND(OR(IS NOT NULL($63), IS NOT NULL($64)), IS NOT TRUE(=($63, $64)))" intead of "IS_DISTINCT_FROM".
>
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)