[ 
https://issues.apache.org/jira/browse/DRILL-6710?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16596157#comment-16596157
 ] 

Volodymyr Vysotskyi commented on DRILL-6710:
--------------------------------------------

It should be noted that with this fix query above will fail.

Another option we may consider for such cases where scale becomes negative due 
to the assumption that value may not fit the max numeric precision is to left 
precision max for resulting major type and check the precision of the value at 
the execution stage.

[~shamirwasia], what do you think about this?

> Drill C++ Client does not handle scale = 0 properly for decimal
> ---------------------------------------------------------------
>
>                 Key: DRILL-6710
>                 URL: https://issues.apache.org/jira/browse/DRILL-6710
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Execution - Relational Operators
>    Affects Versions: 1.14.0
>            Reporter: Robert Hou
>            Assignee: Sorabh Hamirwasia
>            Priority: Major
>             Fix For: 1.15.0
>
>
> Query is:
> select cast('999999999999999999' as decimal(18,0)) + 
> cast('9999999999999999999999999999999999999' as decimal(38,0)) from data 
> limit 1
> This is the error I get when my test program calls SQLExecDirect:
> The driver reported the following diagnostics whilst running SQLExecDirect
> HY000:1:40140:[MapR][Support] (40140) Scale can't be less than zero.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to