[
https://issues.apache.org/jira/browse/HADOOP-4579?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Robert Chansler updated HADOOP-4579:
------------------------------------
Fix Version/s: 0.20.0
Status: Patch Available (was: Open)
Not suitable for unit testing since this relies on a particular failure mode.
> StorageDirectory is not removed from the storage directories list when
> writing to an edits fails
> ------------------------------------------------------------------------------------------------
>
> Key: HADOOP-4579
> URL: https://issues.apache.org/jira/browse/HADOOP-4579
> Project: Hadoop Core
> Issue Type: Bug
> Components: dfs
> Reporter: Boris Shkolnik
> Assignee: Boris Shkolnik
> Fix For: 0.20.0
>
> Attachments: hadoop4579.patch
>
>
> If there is an IO Error on any log operations the directory should be removed
> from the list of active storage directories.
> when it happens function FSEditLog:processIOError() is called.
> in this function:
> ....
> File parentStorageDir =
> ((EditLogFileOutputStream)editStreams.get(index)).getFile().getParentFile().getParentFile();
> -- which returns root
> ....
> fsimage.processIOErrors(parentStorageDir);
> ...
> which calles FSImage:ProcessIOErrors(dir).
> but when dir is compared against list of storage dirs getParent is used
> instead of getPath()
> so the match is never found.
> ....
> if (sd.getRoot().getPath().equals(dirName.getParent())) {
> - should be dirName.getPath()
> .....
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.