[ https://issues.apache.org/jira/browse/DRILL-4140?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Matthias Liebig closed DRILL-4140. ---------------------------------- Resolution: Fixed Fix Version/s: 1.4.0 Fixed in 1.4.0. Probably a duplicate of DRILL-4145 (different error msg, but fix seems to address the same issue). > csv extractHeader: fails on multiple empty columns > -------------------------------------------------- > > Key: DRILL-4140 > URL: https://issues.apache.org/jira/browse/DRILL-4140 > Project: Apache Drill > Issue Type: Bug > Components: Storage - Text & CSV > Affects Versions: 1.3.0 > Environment: Linux (RHEL 7.1) > Reporter: Matthias Liebig > Priority: Minor > Fix For: 1.4.0 > > > When the extractHeader feature is enabled and several columns in a row are > empty, an exception occurs. > {code:title=csv_with_header.csvh|borderStyle=solid} > name,num1,num2,num3 > hello,1,2,3 > hello,,, > hello,1,2,3 > hello,1,2,3 > {code} > {code:java} > SELECT * FROM dfs.`/tmp/csv_with_header.csvh`; > java.lang.NegativeArraySizeException > at > org.apache.drill.exec.vector.VarCharVector$Accessor.get(VarCharVector.java:450) > at > org.apache.drill.exec.vector.accessor.VarCharAccessor.getBytes(VarCharAccessor.java:125) > at > org.apache.drill.exec.vector.accessor.VarCharAccessor.getString(VarCharAccessor.java:146) > at > org.apache.drill.exec.vector.accessor.VarCharAccessor.getObject(VarCharAccessor.java:136) > at > org.apache.drill.exec.vector.accessor.VarCharAccessor.getObject(VarCharAccessor.java:94) > at > org.apache.drill.exec.vector.accessor.BoundCheckingAccessor.getObject(BoundCheckingAccessor.java:148) > at > org.apache.drill.jdbc.impl.TypeConvertingSqlAccessor.getObject(TypeConvertingSqlAccessor.java:795) > at > org.apache.drill.jdbc.impl.AvaticaDrillSqlAccessor.getObject(AvaticaDrillSqlAccessor.java:179) > at > net.hydromatic.avatica.AvaticaResultSet.getObject(AvaticaResultSet.java:351) > at > org.apache.drill.jdbc.impl.DrillResultSetImpl.getObject(DrillResultSetImpl.java:401) > at sqlline.Rows$Row.<init>(Rows.java:157) > at sqlline.IncrementalRows.hasNext(IncrementalRows.java:63) > at > sqlline.TableOutputFormat$ResizingRowsProvider.next(TableOutputFormat.java:87) > at sqlline.TableOutputFormat.print(TableOutputFormat.java:118) > at sqlline.SqlLine.print(SqlLine.java:1593) > at sqlline.Commands.execute(Commands.java:852) > at sqlline.Commands.sql(Commands.java:751) > at sqlline.SqlLine.dispatch(SqlLine.java:746) > at sqlline.SqlLine.begin(SqlLine.java:621) > at sqlline.SqlLine.start(SqlLine.java:375) > at sqlline.SqlLine.main(SqlLine.java:268) > {code} > As a workaround an empty column can be added to each line (inluding the > header). -- This message was sent by Atlassian JIRA (v6.3.4#6332)