You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Raghu Angadi (JIRA)" <ji...@apache.org> on 2007/10/29 23:39:50 UTC

[jira] Updated: (HADOOP-2121) Unexpected IOException in DFSOutputStream.close()

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

Raghu Angadi updated HADOOP-2121:
---------------------------------

    Attachment: HADOOP-2121.patch


We still need to confirm, but I think what happened is that, {{out.write()}} failed because of lack of space on Datanodes and app did a {{out.close()}} after that. But inside {{clode()}}, FSOutputSummer ended up invoking lower level write() with stale data. The attached patch fixes that.


> Unexpected IOException in DFSOutputStream.close()
> -------------------------------------------------
>
>                 Key: HADOOP-2121
>                 URL: https://issues.apache.org/jira/browse/HADOOP-2121
>             Project: Hadoop
>          Issue Type: Bug
>            Reporter: Raghu Angadi
>            Assignee: Raghu Angadi
>             Fix For: 0.14.3
>
>         Attachments: HADOOP-2121.patch
>
>
> While running a test with datanodes with disk space limitations, Hairong noticed many IOExceptions like this :
> {noformat}
> java.io.IOException: Mismatch in writeChunk() args
>  at org.apache.hadoop.dfs.DFSClient$DFSOutputStream.writeChunk(DFSClient.java:1575)
>  at org.apache.hadoop.fs.FSOutputSummer.writeChecksumChunk(FSOutputSummer.java:140)
>  at org.apache.hadoop.fs.FSOutputSummer.flushBuffer(FSOutputSummer.java:122)
>  at org.apache.hadoop.dfs.DFSClient$DFSOutputStream.close(DFSClient.java:1715)
>  at org.apache.hadoop.fs.FSDataOutputStream$PositionCache.close(FSDataOutputStream.java:49)
>  at org.apache.hadoop.fs.FSDataOutputStream.close(FSDataOutputStream.java:64)
>  at org.apache.hadoop.io.SequenceFile$Writer.close(SequenceFile.java:918)
>  at org.apache.hadoop.mapred.SequenceFileOutputFormat$1.close(SequenceFileOutputFormat.java:72)
>  at org.apache.hadoop.mapred.MapTask$DirectMapOutputCollector.close(MapTask.java:232)
>  at org.apache.hadoop.mapred.MapTask.run(MapTask.java:197)
>  at org.apache.hadoop.mapred.TaskTracker$Child.main(TaskTracker.java:1935)
> {noformat}
> I will submit a patch. With the patch, we will still see an IOException, but an expected one.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.