[
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)