You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Jason Altekruse (JIRA)" <ji...@apache.org> on 2015/03/06 00:27:38 UTC

[jira] [Resolved] (DRILL-2391) NPE during cleanup in parquet record writer when query fails during execution on CTAS

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

Jason Altekruse resolved DRILL-2391.
------------------------------------
    Resolution: Duplicate

> NPE during cleanup in parquet record writer when query fails during execution on CTAS
> -------------------------------------------------------------------------------------
>
>                 Key: DRILL-2391
>                 URL: https://issues.apache.org/jira/browse/DRILL-2391
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Storage - Parquet
>    Affects Versions: 0.8.0
>            Reporter: Victoria Markman
>            Assignee: Steven Phillips
>         Attachments: query.sql, t5.csv
>
>
> Query below fails during execution due to the user error:
> {code}
> 0: jdbc:drill:schema=dfs> select
> . . . . . . . . . . . . >         case when columns[0] = '' then cast(null as varchar(255)) else cast(columns[0] as varchar(255)) end,
> . . . . . . . . . . . . >         case when columns[1] = '' then cast(null as integer) else cast(columns[1] as integer) end,
> . . . . . . . . . . . . >         case when columns[2] = '' then cast(null as bigint) else cast(columns[2] as bigint) end,
> . . . . . . . . . . . . >         case when columns[3] = '' then cast(null as float) else cast(columns[3] as float) end,
> . . . . . . . . . . . . >         case when columns[4] = '' then cast(null as double) else cast(columns[4] as double) end,
> . . . . . . . . . . . . >         case when columns[5] = '' then cast(null as date) else cast(columns[6] as date) end,
> . . . . . . . . . . . . >         case when columns[6] = '' then cast(null as time) else cast(columns[7] as time) end,
> . . . . . . . . . . . . >         case when columns[7] = '' then cast(null as timestamp) else cast(columns[8] as timestamp) end,
> . . . . . . . . . . . . >         case when columns[8] = '' then cast(null as boolean) else cast(columns[9] as boolean) end,
> . . . . . . . . . . . . >         case when columns[9] = '' then cast(null as decimal(8,2)) else cast(columns[9] as decimal(8,2)) end,
> . . . . . . . . . . . . >         case when columns[10] = '' then cast(null as decimal(18,4)) else cast(columns[10] as decimal(18,4)) end,
> . . . . . . . . . . . . >         case when columns[11] = '' then cast(null as decimal(28,4)) else cast(columns[11] as decimal(28,4)) end,
> . . . . . . . . . . . . >         case when columns[12] = '' then cast(null as decimal(38,6)) else cast(columns[12] as decimal(38,6)) end
> . . . . . . . . . . . . > from `t5.csv`;
> Query failed: RemoteRpcException: Failure while running fragment., Value 0 for monthOfYear must be in the range [1,12] [ 5a56453c-304d-430a-b4b2-fbc48c9c2766 on atsqa4-133.qa.lab:31010 ]
> [ 5a56453c-304d-430a-b4b2-fbc48c9c2766 on atsqa4-133.qa.lab:31010 ]
> Error: exception while executing query: Failure while executing query. (state=,code=0)
> {code}
> If I run the same query in CTAS, I get NPE during cleanup in parquet writer.
> {code}
> 2015-03-05 22:31:05,212 [2b0726d7-4127-2a83-8c83-2376b767d800:frag:0:0] ERROR o.a.d.e.w.f.AbstractStatusReporter - Error 50633e23-7e6f-48b8-82ec-a395c5c596e4: Failure while running fragment.
> java.lang.NullPointerException: null
>         at org.apache.drill.exec.store.parquet.ParquetRecordWriter.cleanup(ParquetRecordWriter.java:318) ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
>         at org.apache.drill.exec.physical.impl.WriterRecordBatch.cleanup(WriterRecordBatch.java:187) ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
>         at org.apache.drill.exec.physical.impl.validate.IteratorValidatorBatchIterator.cleanup(IteratorValidatorBatchIterator.java:148) ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
>         at org.apache.drill.exec.record.AbstractSingleRecordBatch.cleanup(AbstractSingleRecordBatch.java:121) ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
>         at org.apache.drill.exec.physical.impl.validate.IteratorValidatorBatchIterator.cleanup(IteratorValidatorBatchIterator.java:148) ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
>         at org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.internalStop(ScreenCreator.java:178) ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
>         at org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.innerNext(ScreenCreator.java:101) ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
>         at org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:57) ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
>         at org.apache.drill.exec.work.fragment.FragmentExecutor.run(FragmentExecutor.java:121) ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
>         at org.apache.drill.exec.work.WorkManager$RunnableWrapper.run(WorkManager.java:303) [drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_71]
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_71]
>         at java.lang.Thread.run(Thread.java:745) [na:1.7.0_71]
> 2015-03-05 22:31:05,213 [2b0726d7-4127-2a83-8c83-2376b767d800:frag:0:0] INFO  o.a.drill.exec.work.foreman.Foreman - State change requested.  RUNNING --> FAILED
> org.apache.drill.exec.rpc.RemoteRpcException: Failure while running fragment.[ 50633e23-7e6f-48b8-82ec-a395c5c596e4 on atsqa4-133.qa.lab:31010 ]
> [ 50633e23-7e6f-48b8-82ec-a395c5c596e4 on atsqa4-133.qa.lab:31010 ]
> {code}



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