[
https://issues.apache.org/jira/browse/IMPALA-8054?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Peter Rozsa reassigned IMPALA-8054:
-----------------------------------
Assignee: Peter Rozsa
> Implicit cast fails with {const INT} BETWEEN FLOAT and INT
> ----------------------------------------------------------
>
> Key: IMPALA-8054
> URL: https://issues.apache.org/jira/browse/IMPALA-8054
> Project: IMPALA
> Issue Type: Bug
> Components: Frontend
> Affects Versions: Impala 3.2.0
> Reporter: Greg Rahn
> Assignee: Peter Rozsa
> Priority: Major
>
> In the following query the literal number 10 needs to be compared to two
> different types: INT and FLOAT, but Impala fails to make the implicit cast
> for the FLOAT.
> The predicates should be
> {noformat}
> predicates: (cast(10 as float) >= col4) AND (10 <= col3)
> {noformat}
> *Test cases:*
> {noformat}
> sql> describe tab4
> +------+--------+---------+
> | name | type | comment |
> +------+--------+---------+
> | pk | int | |
> | col0 | int | |
> | col1 | float | |
> | col2 | string | |
> | col3 | int | |
> | col4 | float | |
> | col5 | string | |
> +------+--------+---------+
> sql> SELECT col0 FROM tab4 WHERE 10 BETWEEN col4 AND col3;
> ERROR: IllegalStateException: child 0 type: FLOAT child 1 type: DOUBLE
> sql> SELECT * FROM tab4 WHERE NULL NOT BETWEEN col3 AND col1;
> ERROR: IllegalStateException: child 0 type: INT child 1 type: DOUBLE
> sql> SELECT * FROM tab4 WHERE NULL BETWEEN CAST ( NULL AS INTEGER ) AND col4
> ERROR: IllegalStateException: child 0 type: DOUBLE child 1 type: INT
> {noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]