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

Jing Zhao commented on HDFS-5281:
---------------------------------

The patch looks pretty good. Some comments:

# In WriteManager.java,
{code}
+    if (openFileCtx != null) {
+      openFileCtx.checkCommit(dfsClient, commitOffset, channel, xid, 
preOpAttr);
     }
.....
+    Nfs3Utils.writeChannel(channel,
+        response.writeHeaderAndResponse(new XDR(), xid, new VerifierNone()),
+        xid);
{code}
Looks like we cannot always write the same response here. The response should 
depends on the result of  OpenFileCtx#checkCommit?
# OpenFileCtx#checkCommit will also send response back to the client. Let's 
make the checkCommit call only handles internal logic and let 
WriteManager#handleCommit to handle all the responses.
# Getter methods of CommitCtx need not be public.

> COMMIT request should not block
> -------------------------------
>
>                 Key: HDFS-5281
>                 URL: https://issues.apache.org/jira/browse/HDFS-5281
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: nfs
>            Reporter: Brandon Li
>            Assignee: Brandon Li
>         Attachments: HDFS-5281.001.patch, HDFS-5281.002.patch
>
>
> Currently Commit request is handled synchronously, blocked at most 30 seconds 
> before timeout. This JIRA is to make is asynchronous and thus it won't block 
> other requests coming from the same channel. 



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to