Chiradip Mandal created CALCITE-2769:
----------------------------------------

             Summary: CSV Adapter does not handle - Empty and malformed csv 
lines, space before or after comma
                 Key: CALCITE-2769
                 URL: https://issues.apache.org/jira/browse/CALCITE-2769
             Project: Calcite
          Issue Type: Bug
          Components: csv-adapter
    Affects Versions: 1.18.0
            Reporter: Chiradip Mandal
            Assignee: Julian Hyde
             Fix For: next


File: org.apache.calcite.adapter.csv.CsvEnumerator.java in example folder did 
not handle CSV with space between delimiter i.e."," and also did not handle 
empty lines or malformed lines in the middle of the file or to the end. The 
sqlline crashes is there is an empty line with 
java.lang.ArrayIndexOutOfBoundsException. 

 

java.lang.ArrayIndexOutOfBoundsException: 1

at 
org.apache.calcite.adapter.csv.CsvEnumerator$ArrayRowConverter.convertNormalRow(CsvEnumerator.java:347)

at 
org.apache.calcite.adapter.csv.CsvEnumerator$ArrayRowConverter.convertRow(CsvEnumerator.java:339)

at 
org.apache.calcite.adapter.csv.CsvEnumerator$ArrayRowConverter.convertRow(CsvEnumerator.java:317)

at org.apache.calcite.adapter.csv.CsvEnumerator.moveNext(CsvEnumerator.java:204)

at 
org.apache.calcite.linq4j.EnumerableDefaults$10$1.moveNext(EnumerableDefaults.java:1878)

at 
org.apache.calcite.linq4j.EnumerableDefaults$10$1.moveNext(EnumerableDefaults.java:1878)

at 
org.apache.calcite.linq4j.TransformedEnumerator.moveNext(TransformedEnumerator.java:35)

at org.apache.calcite.linq4j.Linq4j$EnumeratorIterator.next(Linq4j.java:684)

at org.apache.calcite.avatica.util.IteratorCursor.next(IteratorCursor.java:46)

at org.apache.calcite.avatica.AvaticaResultSet.next(AvaticaResultSet.java:217)

at sqlline.IncrementalRows.hasNext(IncrementalRows.java:73)

at sqlline.TableOutputFormat.print(TableOutputFormat.java:38)

at sqlline.SqlLine.print(SqlLine.java:1719)

at sqlline.Commands.execute(Commands.java:949)

at sqlline.Commands.sql(Commands.java:882)

at sqlline.SqlLine.dispatch(SqlLine.java:725)

at sqlline.SqlLine.begin(SqlLine.java:540)

at sqlline.SqlLine.start(SqlLine.java:264)

at sqlline.SqlLine.main(SqlLine.java:195)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to