[ https://issues.apache.org/jira/browse/FLINK-29590?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17617395#comment-17617395 ]
luoyuxia commented on FLINK-29590: ---------------------------------- [~jark] Sure, but we have to merge the pr [https://github.com/apache/flink/pull/21034] for FLINK-29337 first since there's some conflicts between them. > Fix literal issue in HiveDialect > -------------------------------- > > Key: FLINK-29590 > URL: https://issues.apache.org/jira/browse/FLINK-29590 > Project: Flink > Issue Type: Bug > Components: Connectors / Hive > Affects Versions: 1.16.0 > Reporter: luoyuxia > Assignee: luoyuxia > Priority: Major > Labels: pull-request-available > Fix For: 1.17.0 > > > in FLINK-26474, we try to fold constant, but it brings a issue that the > folded constant like `Double.NAN` and no-primitive type can't be convert > into calcite literal in method `HiveParserRexNodeConverter#convertConstant`. > For example, the following code will throw an exception > "org.apache.hadoop.hive.ql.parse.SemanticException: NaN" in method > `HiveParserRexNodeConverter#convertConstant` > {code:java} > // hive dialect > SELECT asin(2); {code} > To fix it, we need to figure out such case and then not to fold constant . > > in FLINK-27017, we use Hive's `GenericUDFOPDivide` to do divide for better > compatibility, but it bring a issue that when use a int/long literal as > divisor, the result type passed and inferred type may not match. > The fix it, we need to make the result type match the inferred type. > -- This message was sent by Atlassian Jira (v8.20.10#820010)