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

Pengcheng Xiong updated HIVE-15304:
-----------------------------------
    Target Version/s: 2.1.2, 3.0.0  (was: 2.2.0, 2.1.2)

> Implicit down cast should throw error
> -------------------------------------
>
>                 Key: HIVE-15304
>                 URL: https://issues.apache.org/jira/browse/HIVE-15304
>             Project: Hive
>          Issue Type: Bug
>    Affects Versions: 0.13.0, 0.14.0, 0.13.1, 1.0.0, 1.2.0, 1.1.0, 1.0.1, 
> 1.1.1, 1.2.1, 2.0.0, 2.1.0, 2.0.1, 2.1.1
>            Reporter: Christian Zorneck
>
> Implicit down casts from a bigger numeric  type to a smaller type should 
> throw an error, when a numeric overflow happens.
> Example:
> CREATE TABLE downcast_test (int_value INT);
> -- implicit cast to BIGINT and than implicit cast to INT
> INSERT INTO TABLE downcast_test SELECT 2147483647 + 1;
> -- implicit cast from BIGINT to INT
> INSERT INTO TABLE downcast_test SELECT 2147483648L;
> -- implicit cast from DOUBLE to INT
> INSERT INTO TABLE downcast_test SELECT 2.147483648E9;
> SELECT * FROM downcast_test;
> =>
> -2147483648  -- expected int overflow value
> -2147483648  -- expected int overflow value
> 2147483647  -- what happend here? cast from DOUBLE to INT results in INT max 
> value
> Here you can see another nice bug with cast from DOUBLE to INT, but this is 
> not the issue here.
> Reading the following documentation
> https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Types#LanguageManualTypes-AllowedImplicitConversions
> implicit down casts from BIGINT and DOUBLE to INT are not allowed. So an 
> exception is expected. But no exception will be thrown, it quite casts the 
> values somehow down to INT



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to