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

Steve Loughran commented on HADOOP-9371:
----------------------------------------

[~farrellee] -I think I just pulled that {{mkdirs()}} is atomic fact from HDFS, 
knowing that it's something blobstores dramatically break ({{mkdirs()}} taking 
the time for a chain of PUT operations from the potentially remote caller.

You are right, though, there's no guarantee that it has to be atomic, and a 
quick look at the Posix docs imply that while {{mkdir()}} is required to be 
(it's one of the API calls that must be atomic), {{mkdirs()}} can be done 
client side. When you start to consider cross-volume and NFS mounts, it would 
have to be non-atomic.

I'll change that, and we'd better hope that nobody relies on mkdirs being 
atomic. I wonder if there is a way to check this other than turning it off and 
seeing what breaks? 
                
> Define Semantics of FileSystem and FileContext more rigorously
> --------------------------------------------------------------
>
>                 Key: HADOOP-9371
>                 URL: https://issues.apache.org/jira/browse/HADOOP-9371
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: fs
>    Affects Versions: 1.2.0, 3.0.0
>            Reporter: Steve Loughran
>            Assignee: Steve Loughran
>         Attachments: HadoopFilesystemContract.pdf
>
>   Original Estimate: 48h
>  Remaining Estimate: 48h
>
> The semantics of {{FileSystem}} and {{FileContext}} are not completely 
> defined in terms of 
> # core expectations of a filesystem
> # consistency requirements.
> # concurrency requirements.
> # minimum scale limits
> Furthermore, methods are not defined strictly enough in terms of their 
> outcomes and failure modes.
> The requirements and method semantics should be defined more strictly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to