[ https://issues.apache.org/jira/browse/DRILL-2338?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mehant Baid updated DRILL-2338: ------------------------------- Attachment: DRILL-2338.patch Minor patch to copy the scale and precision into the holder while doing a get(). > DECIMAL 38 when stored as a required datatype results in wrong data > ------------------------------------------------------------------- > > Key: DRILL-2338 > URL: https://issues.apache.org/jira/browse/DRILL-2338 > Project: Apache Drill > Issue Type: Bug > Components: Storage - Parquet > Affects Versions: 0.8.0 > Reporter: Ramana Inukonda Nagaraj > Assignee: Mehant Baid > Fix For: 0.8.0 > > Attachments: DRILL-2338.patch > > > Writing out a decimal 38 column by casting a literal results in a different > value being written out. > {code} > 0: jdbc:drill:> create table mehant_bug as select cast('1.2' as > decimal(38,2)) from cp.`employee.json` limit 1; > 0: jdbc:drill:> select * from mehant_bug; > +------------+ > | EXPR$0 | > +------------+ > | 12000000.00 | > +------------+ > 1 row selected (0.08 seconds) > {code} > [root@perfnode167 impala_parquet]# > parquet-tools-1.5.1-SNAPSHOT/parquet-schema ../mehant_bug/0_0_0.parquet > message root { > required fixed_len_byte_array(16) EXPR$0 (DECIMAL(38,2)); > } > If the column is stored as optional we do not have this issue. -- This message was sent by Atlassian JIRA (v6.3.4#6332)