[
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)