[ https://issues.apache.org/jira/browse/DRILL-1216?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14088785#comment-14088785 ]
Jacques Nadeau commented on DRILL-1216: --------------------------------------- Resolved by 8c66525 or earlier. > Decimal multiplication breaks when the precision exceeds 38 even when the > actual data is small > ---------------------------------------------------------------------------------------------- > > Key: DRILL-1216 > URL: https://issues.apache.org/jira/browse/DRILL-1216 > Project: Apache Drill > Issue Type: Bug > Components: Execution - Data Types > Reporter: Rahul Challapalli > Fix For: 0.5.0 > > Attachments: DRILL-1216.patch > > > git.commit.id.abbrev=caa8b78 > Input File Contents : > {code} > 111.11|222.22|333.33 > 444.44|555.55|666.66 > 777.77|888.88|999.99 > {code} > The below SQL query gives inaccurate results since the precision of the > multiplication is 39 (>38): > {code} > select cast(columns[0] as decimal(15,2)) * cast(columns[1] as decimal(15,2)) > * cast(columns[2] as decimal(15,2)) val from `decimal_scale.tbl`; > +------------+ > | val | > +------------+ > | 1000000000 | > | 0 | > | 0 | > +------------+ > {code} > However the below SQL query succeeds : > {code} > select cast(columns[0] as decimal(5,2)) * cast(columns[1] as decimal(5,2)) * > cast(columns[2] as decimal(5,2)) val from `decimal_scale.tbl`; > +------------+ > | val | > +------------+ > | 8230205.763786 | > | 164604115.275720 | > | 691337284.158024 | > +------------+ > {code} -- This message was sent by Atlassian JIRA (v6.2#6252)