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

Imran Rashid resolved SPARK-20038.
----------------------------------
       Resolution: Fixed
    Fix Version/s: 2.2.0

Issue resolved by pull request 17364
[https://github.com/apache/spark/pull/17364]

> FileFormatWriter.ExecuteWriteTask.releaseResources() implementations to be 
> re-entrant
> -------------------------------------------------------------------------------------
>
>                 Key: SPARK-20038
>                 URL: https://issues.apache.org/jira/browse/SPARK-20038
>             Project: Spark
>          Issue Type: Improvement
>          Components: Spark Core
>    Affects Versions: 2.2.0
>            Reporter: Steve Loughran
>            Priority: Minor
>             Fix For: 2.2.0
>
>
> Both {{FileFormatWriter.ExecuteWriteTask.releaseResources()}} implementations 
> {{close()}} any non-null {{currentWriter}}, then set the field to null
> However, if the close() call throws an exception in the execution of 
> {{{FileFormatWriter.executeTask}}, the exception handler will attempt to 
> cleanup, by calling {{releaseResources()}} again. Looking at the codepath, 
> this may cause {{committer.abortTask()}} to get skipped on failure.
> This surfaces in SPARK-10109 and I've just seen it in HADOOP-14204); Parquet 
> seems to be in the trace as it NPEs the second time it's {{close()}} method 
> is called.
> Fix: always set {{currentWriter}} to null,



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to