[ 
https://issues.apache.org/jira/browse/HDFS-1926?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13033125#comment-13033125
 ] 

Todd Lipcon commented on HDFS-1926:
-----------------------------------

bq. I guess the only problem here would be if write didn't fail immediately, 
but blocked indefinitely (if the StorageDirectory pointed to a hard mounted NFS 
share for example).

Yea, I thought about that as well (it's something we see a lot with customers 
who forget to set their NFS mounts to soft with a low timeout).

But, I think, we never know whether we'll see this problem first with an 
editlog write vs an image save, so we have to handle this case in both places 
anyway, perhaps by adding timeouts to such operations. I think we should deal 
with that as part of HDFS-1603.

It made a lot of sense before when we needed agreement between images and 
editlogs about whether a directory was active, in order to coordinate 
image/edit rolls. But now that the two are entirely orthogonal (except for 
happening to share a directory) I don't see much benefit.

Let me ping Sanjay as well to see if he has an opinion here.

> Remove references to StorageDirectory from JournalManager interface
> -------------------------------------------------------------------
>
>                 Key: HDFS-1926
>                 URL: https://issues.apache.org/jira/browse/HDFS-1926
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>            Reporter: Ivan Kelly
>            Assignee: Ivan Kelly
>         Attachments: HDFS-1926-nolistener.diff, HDFS-1926.diff, HDFS-1926.diff
>
>
> The JournalManager interface introduced by HDFS-1799 has a 
> getStorageDirectory method which is out of place in a generic interface. This 
> JIRA removed that call by refactoring the error handling for FSEditLog. Each 
> EditLogFileOutputStream is now a NNStorageListener and listens for error on 
> it's containing StorageDirectory. If an error occurs from FSImage, the stream 
> will be aborted. If the error occurs in FSEditLog, the stream will be aborted 
> and NNStorage will be notified that the StorageDirectory is no longer valid.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to