[ https://issues.apache.org/jira/browse/DRILL-4108?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15013126#comment-15013126 ]
ASF GitHub Bot commented on DRILL-4108: --------------------------------------- GitHub user abhipol opened a pull request: https://github.com/apache/drill/pull/269 DRILL-4108: Query on csv file w/ header fails with an exception when non existing column is requested - fix non existing header column request - fix reading header row even if skipFirstLine is set true - will update on regression test results You can merge this pull request into a Git repository by running: $ git pull https://github.com/abhipol/drill issues/DRILL-4108 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/drill/pull/269.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #269 ---- commit f285d972986f230a9aff94100fdd1bff339c2267 Author: Abhi P <abhi...@dremio.com> Date: 2015-11-18T02:14:18Z Handle non existing cols for query w extractHeader ---- > Query on csv file w/ header fails with an exception when non existing column > is requested > ----------------------------------------------------------------------------------------- > > Key: DRILL-4108 > URL: https://issues.apache.org/jira/browse/DRILL-4108 > Project: Apache Drill > Issue Type: Bug > Components: Storage - Text & CSV > Affects Versions: 1.3.0 > Reporter: Abhi Pol > Fix For: 1.4.0 > > > Drill query on a csv file with header requesting column(s) that do not exists > in header fails with an exception. > *Current behavior:* once extractHeader is enabled, query columns must be > columns from the header > *Expected behavior:* non existing columns should appear with 'null' values > like default drill behavior > {noformat} > 0: jdbc:drill:zk=local> select Category from dfs.`/tmp/cars.csvh` limit 10; > java.lang.ArrayIndexOutOfBoundsException: -1 > at > org.apache.drill.exec.store.easy.text.compliant.FieldVarCharOutput.<init>(FieldVarCharOutput.java:104) > at > org.apache.drill.exec.store.easy.text.compliant.CompliantTextRecordReader.setup(CompliantTextRecordReader.java:118) > at > org.apache.drill.exec.physical.impl.ScanBatch.<init>(ScanBatch.java:108) > at > org.apache.drill.exec.store.dfs.easy.EasyFormatPlugin.getReaderBatch(EasyFormatPlugin.java:198) > at > org.apache.drill.exec.store.dfs.easy.EasyReaderBatchCreator.getBatch(EasyReaderBatchCreator.java:35) > at > org.apache.drill.exec.store.dfs.easy.EasyReaderBatchCreator.getBatch(EasyReaderBatchCreator.java:28) > at > org.apache.drill.exec.physical.impl.ImplCreator.getRecordBatch(ImplCreator.java:151) > at > org.apache.drill.exec.physical.impl.ImplCreator.getChildren(ImplCreator.java:174) > at > org.apache.drill.exec.physical.impl.ImplCreator.getRecordBatch(ImplCreator.java:131) > at > org.apache.drill.exec.physical.impl.ImplCreator.getChildren(ImplCreator.java:174) > at > org.apache.drill.exec.physical.impl.ImplCreator.getRecordBatch(ImplCreator.java:131) > at > org.apache.drill.exec.physical.impl.ImplCreator.getChildren(ImplCreator.java:174) > at > org.apache.drill.exec.physical.impl.ImplCreator.getRecordBatch(ImplCreator.java:131) > at > org.apache.drill.exec.physical.impl.ImplCreator.getChildren(ImplCreator.java:174) > at > org.apache.drill.exec.physical.impl.ImplCreator.getRootExec(ImplCreator.java:105) > at > org.apache.drill.exec.physical.impl.ImplCreator.getExec(ImplCreator.java:79) > at > org.apache.drill.exec.work.fragment.FragmentExecutor.run(FragmentExecutor.java:230) > at > org.apache.drill.common.SelfCleaningRunnable.run(SelfCleaningRunnable.java:38) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) > Error: SYSTEM ERROR: ArrayIndexOutOfBoundsException: -1 > Fragment 0:0 > [Error Id: f272960e-fa2f-408e-918c-722190398cd3 on blackhole:31010] > (state=,code=0) > {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)