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

Zhe Zhang commented on HDFS-8033:
---------------------------------

Continuing with Jing's comments:
bq. In DFSInputStream, the reading state can be captured by blockReader, 
currentNode, etc. When reading striped blocks, it may be more clear to define 
the state as the group of readers and DataNodes.
Good point about maintaining a list of current DataNodes. This will be helpful 
to track bad nodes in the parallel reading case. The patch already maintains 
{{blockReaders}}. The entire list of {{blockReader}}s are forwarded to the next 
striped block group every time {{blockSeekTo}} is called. I guess in the 
parallel stateful reading case we can just read from those {{blockReader}}s in 
parallel.

bq. Thus instead of declare blockReader, currentNode, etc as protected and keep 
updating them in DFSStripedInputStream, I guess it may be better to define 
DFSStripedInputStream's own states (using a list of readers etc.). We may want 
to override the whole readWithStrategy method in DFSStripedInputStream as well.
Yes, per the above discussion, we should also override {{readWithStrategy}} to 
handle {{currentNodes}}

> Erasure coding: stateful (non-positional) read from files in striped layout
> ---------------------------------------------------------------------------
>
>                 Key: HDFS-8033
>                 URL: https://issues.apache.org/jira/browse/HDFS-8033
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>            Reporter: Zhe Zhang
>            Assignee: Zhe Zhang
>         Attachments: HDFS-8033.000.patch, HDFS-8033.001.patch
>
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to