You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "bc Wong (JIRA)" <ji...@apache.org> on 2010/03/16 17:28:32 UTC
[jira] Updated: (HDFS-941) Datanode xceiver protocol should allow
reuse of a connection
[ https://issues.apache.org/jira/browse/HDFS-941?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
bc Wong updated HDFS-941:
-------------------------
Attachment: HDFS-941-1.patch
Attaching a patch, which:
* In {{DFSInputStream}}, stores the last socket and the owner ({{BlockReader}}) of that socket.
* If the owner did read till EOS, then it'll consider reusing that socket.
* It's a cache of size 1, but easy to extend to _n_. However, size of 1 makes sense for now because:
* The DN ({{DataXceiver}}) no longer closes the client connection after every op. It optimistically expects the next op, with a very low timeout value. It closes the connection only on EOS or timeout.
Note that the HDFS-941-1.patch depends on the HDFS-1001 patch.
> Datanode xceiver protocol should allow reuse of a connection
> ------------------------------------------------------------
>
> Key: HDFS-941
> URL: https://issues.apache.org/jira/browse/HDFS-941
> Project: Hadoop HDFS
> Issue Type: Improvement
> Components: data-node, hdfs client
> Affects Versions: 0.22.0
> Reporter: Todd Lipcon
> Attachments: HDFS-941-1.patch
>
>
> Right now each connection into the datanode xceiver only processes one operation.
> In the case that an operation leaves the stream in a well-defined state (eg a client reads to the end of a block successfully) the same connection could be reused for a second operation. This should improve random read performance significantly.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.