[
https://issues.apache.org/jira/browse/FLINK-29657?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17619186#comment-17619186
]
luoyuxia commented on FLINK-29657:
----------------------------------
I see. The most Hive sql statements in Hive 1.2 should also work in Hive 2.3
since the Hive sql is expected be backward compatible, but some behavior may
different between Hive 1.2, Hive 2.3. And from my experience, most of the
changes are bugs fix or some other things that Hive commutily decide to change
the behavior after a carefully discussion.
[~Runking] If you have any other problems, please let me know. I'm really glad
to help. :)
> Flink hive parser considers literal floating point number differently than
> Hive SQL
> -----------------------------------------------------------------------------------
>
> Key: FLINK-29657
> URL: https://issues.apache.org/jira/browse/FLINK-29657
> Project: Flink
> Issue Type: Sub-task
> Reporter: Runkang He
> Priority: Major
>
> Hive SQL consider literal floating number(such as 1.1) as double, but Flink
> hive parser consider this as decimal, so it causes that some hive udf that
> accepts double arg, will not pass type check in hive parser.
> Hive SQL's behavior:
> hive> explain select 1.1 + false;
> 2022-10-17 16:37:14,286 FAILED: SemanticException [Error 10014]: Line 1:15
> Wrong arguments 'false': No matching method for class
> org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPNumericPlus with
> ({*}double{*}, boolean)
> Flink hive parser's behavior:
> in NumExprProcessor#process, it process non-postfix number as decimal by
> default.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)