You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Jacques Nadeau (JIRA)" <ji...@apache.org> on 2015/01/15 20:31:34 UTC
[jira] [Commented] (DRILL-2015) Casting numeric value that does not
fit in integer data type produces incorrect result
[ https://issues.apache.org/jira/browse/DRILL-2015?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14279172#comment-14279172 ]
Jacques Nadeau commented on DRILL-2015:
---------------------------------------
I think this needs to be looked at in the broader sense. Due we throw exception in the case of truncation or overflow. I know some databases have an option to do both. My inclination is to simply overflow. I'm up for doing this with literals but I don't think the performance impact warrants doing this for all transformations. We could support it as an option but that would be a lot of work and I'm not sure it is an important priority.
> Casting numeric value that does not fit in integer data type produces incorrect result
> --------------------------------------------------------------------------------------
>
> Key: DRILL-2015
> URL: https://issues.apache.org/jira/browse/DRILL-2015
> Project: Apache Drill
> Issue Type: Bug
> Components: Execution - Data Types
> Affects Versions: 0.8.0
> Reporter: Victoria Markman
> Assignee: Daniel Barclay (Drill/MapR)
> Priority: Critical
>
> t1.json
> {code}
> { "a1": 1 , "b1" : 1}
> { "a1": 2 , "b1" : 1}
> { "a1": 2 , "b1" : 2}
> { "a1": 3 , "b1" : 2}
> { "a1": 5000147483647 , "b1" : 3}
> {code}
> We should throw an error, this is technically data corruption.
> {code}
> 0: jdbc:drill:schema=dfs> select cast(a1 as integer) from `t1.json`;
> +------------+
> | EXPR$0 |
> +------------+
> | 1 |
> | 2 |
> | 2 |
> | 3 |
> | 805551103 |
> +------------+
> 5 rows selected (0.074 seconds)
> {code}
> {code}
> 0: jdbc:drill:schema=dfs> select cast(2147483648 as integer) from `t1.json`;
> +------------+
> | EXPR$0 |
> +------------+
> | -2147483648 |
> | -2147483648 |
> | -2147483648 |
> | -2147483648 |
> | -2147483648 |
> +------------+
> 5 rows selected (0.076 seconds)
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)