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

Deneche A. Hakim resolved DRILL-2249.
-------------------------------------
    Resolution: Duplicate

> Parquet reader hit IOBE when reading decimal type columns. 
> -----------------------------------------------------------
>
>                 Key: DRILL-2249
>                 URL: https://issues.apache.org/jira/browse/DRILL-2249
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Storage - Parquet, Storage - Writer
>            Reporter: Jinfeng Ni
>            Assignee: Steven Phillips
>
> On today's master branch:
> select commit_id from sys.version;
> +------------+
> | commit_id |
> +------------+
> | 4ed0a8d68ec5ef344fb54ff7c9d857f7f3f153aa |
> +------------+
> If I create a parquet file containing two decimal(10,2) columns as:
> {code}
> create table my_dec_table as select *, cast(o_totalprice as decimal(10,2)) 
> dec1, cast(o_totalprice as decimal(10,2)) dec2 from cp.`tpch/orders.parquet`;
> +------------+---------------------------+
> | Fragment | Number of records written |
> +------------+---------------------------+
> | 0_0 | 15000 |
> +------------+---------------------------+
> 1 row selected (1.977 seconds)
> {code}
> However, when I try to read from the new created parquet file, Drill report 
> IOBE in parquet reader.
> {code}
> select * from my_dec_table;
> Query failed: Query stopped., index: 22531, length: 1 (expected: range(0, 
> 22531)) [ ee35bc67-5c70-4677-bf7f-8db12e4a5491 on 10.250.0.8:31010 ]
> {code}
> The plan looks fine to me for this query:
> {code}
> xplain plan for select * from my_dec_table;
> +------------+------------+
> |    text    |    json    |
> +------------+------------+
> | 00-00    Screen
> 00-01      Scan(groupscan=[ParquetGroupScan [entries=[ReadEntryWithPath 
> [path=file:/Users/jni/work/data/tpcds/my_dec_table]], 
> selectionRoot=/Users/jni/work/data/tpcds/my_dec_table, numFiles=1, 
> columns=[`*`]]])
> {code}
> Here is part of the stack trace:
> {code}
> java.lang.IndexOutOfBoundsException: index: 22531, length: 1 (expected: 
> range(0, 22531))
>       at io.netty.buffer.DrillBuf.checkIndexD(DrillBuf.java:156) 
> ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:4.0.24.Final]
>       at io.netty.buffer.DrillBuf.chk(DrillBuf.java:178) 
> ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:4.0.24.Final]
>       at io.netty.buffer.DrillBuf.getByte(DrillBuf.java:673) 
> ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:4.0.24.Final]
>       at 
> org.apache.drill.exec.store.parquet.columnreaders.FixedByteAlignedReader$DateReader.readIntLittleEndian(FixedByteAlignedReader.java:144)
>  ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
>       at 
> org.apache.drill.exec.store.parquet.columnreaders.FixedByteAlignedReader.......
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to