[
https://issues.apache.org/jira/browse/HDFS-4750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14712494#comment-14712494
]
Brandon Li commented on HDFS-4750:
----------------------------------
Overlapped writes happen usually for the first block.
For example, a file has 100 bytes. User write this file to NFS mount point.
After a while (the 100 bytes still in OS buffer cache), the user appends
another 100 bytes. In this case, the NFS client will rewrite the first block
(0-199th byte), and thus we see an overlapped write. These kind of case should
be well handled by current code (but, still might have bugs there :-( )
Based on your description, the problem seems not the above case. There is one
case, we currently have not way to control it on the server side:
1. client sends write 0-99, we cache this write and do the write asynchronously
2. client sends another write 180-299, we cache it too, can't write since
there is a hole
3. client sends another write 100-199, we will do the write since it's a
sequential write
4. after we finish writing (0-99) and (100-199), we see an overlapped write
(180-299) in the cache. This is where you see the error message since we are
expecting another sequential write (200-xxx)
This kind of overlapped write happens very rarely. In case it happens, we have
multiple copies of the same range (180-198 in the above example). The data
could be different. When they are different, it could be hard to know which one
is really expected by the client.
> Support NFSv3 interface to HDFS
> -------------------------------
>
> Key: HDFS-4750
> URL: https://issues.apache.org/jira/browse/HDFS-4750
> Project: Hadoop HDFS
> Issue Type: New Feature
> Components: nfs
> Affects Versions: 3.0.0
> Reporter: Brandon Li
> Assignee: Brandon Li
> Attachments: HADOOP-NFS-Proposal.pdf, HDFS-4750.patch, nfs-trunk.patch
>
>
> Access HDFS is usually done through HDFS Client or webHDFS. Lack of seamless
> integration with client’s file system makes it difficult for users and
> impossible for some applications to access HDFS. NFS interface support is one
> way for HDFS to have such easy integration.
> This JIRA is to track the NFS protocol support for accessing HDFS. With HDFS
> client, webHDFS and the NFS interface, HDFS will be easier to access and be
> able support more applications and use cases.
> We will upload the design document and the initial implementation.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)