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

Ewan Higgs commented on HDFS-11639:
-----------------------------------

{quote}Any particular reason for changing BlockProvider to implement 
Iterable<BlockAlias> from Iterable<Block>?{quote}
Yes, as the purpose is to put the {{BlockAlias}} into the client protocol, the 
{{ProvidedStorageMap}} needs to get more than just the {{Block}}. This was done 
by changing the {{BlockProvider}} to return a {{BlockAlias}} instead of the 
{{Block}}. 

{quote}Was blockId intentionally left out of FileRegionProto even though 
FileRegion contains it?{quote}
Yes, this was done for two reasons:

1. The blockid is already in the message. Having it in two locations is a bug 
vector and more wasteful than it needs to be.
2. The FileRegion is really the value in the key value store. The blockid is 
the key. I was going to investigate whether the blockid could be pulled out and 
mapping a {{FileRegion}} to a blockid would be done by association rather than 
embedding the value in the structure, but it's very low priority and well 
beyond the scope of this PR.

If you think the blockid should be in the {{FileRegionProto}} so it maps 
exactly onto the {{FileRegion}} as it exists today, I'm fine with putting it in.

> [READ] Encode the BlockAlias in the client protocol
> ---------------------------------------------------
>
>                 Key: HDFS-11639
>                 URL: https://issues.apache.org/jira/browse/HDFS-11639
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: hdfs
>            Reporter: Ewan Higgs
>            Assignee: Ewan Higgs
>         Attachments: HDFS-11639-HDFS-9806.001.patch, 
> HDFS-11639-HDFS-9806.002.patch, HDFS-11639-HDFS-9806.003.patch, 
> HDFS-11639-HDFS-9806.004.patch
>
>
> As part of the {{PROVIDED}} storage type, we have a {{BlockAlias}} type which 
> encodes information about where the data comes from. i.e. URI, offset, 
> length, and nonce value. This data should be encoded in the protocol 
> ({{LocatedBlockProto}} and the {{BlockTokenIdentifier}}) when a block is 
> available using the PROVIDED storage type.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org

Reply via email to