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

Jing Zhao commented on HDFS-8248:
---------------------------------

The 004 patch looks good to me. Some minors:
# s/INodeId/ID/ for the javadoc of {{BlockCollection#getId}}
# A lot of callers of {{BlockManager#getBlockCollection}} actually pass in 
BlockInfo, thus another lookup of blocksMap (by calling {{getStoredBlock}}) is 
redundant for them. 
# The patch includes many unnecessary indentation changes.
# The following change can be replaced by calling 
{{BlockManager#getBlockCollection}}
{code}
-    final BlockCollection bc = blockUC.getBlockCollection();
+    long bcId = blockUC.getBlockCollectionId();
+    final BlockCollection bc = getBlockCollection(bcId);
{code}

> Store INodeId instead of the INodeFile object in BlockInfoContiguous
> --------------------------------------------------------------------
>
>                 Key: HDFS-8248
>                 URL: https://issues.apache.org/jira/browse/HDFS-8248
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>            Reporter: Haohui Mai
>            Assignee: Haohui Mai
>              Labels: BB2015-05-TBR
>         Attachments: HDFS-8248.000.patch, HDFS-8248.001.patch, 
> HDFS-8248.002.patch, HDFS-8248.003.patch, HDFS-8248.004.patch
>
>
> Currently the namespace and the block manager are tightly coupled together. 
> There are two couplings in terms of implementation:
> 1. The {{BlockInfoContiguous}} stores a reference of the {{INodeFile}} that 
> owns the block, so that the block manager can look up the corresponding file 
> when replicating blocks, recovering from pipeline failures, etc.
> 1. The {{INodeFile}} stores {{BlockInfoContiguous}} objects that the file 
> owns.
> Decoupling the namespace and the block manager allows the BM to be separated 
> out from the Java heap or even as a standalone process. This jira proposes to 
> remove the first coupling by storing the id of the inode instead of the 
> object reference of {{INodeFile}} in the {{BlockInfoContiguous}} class.



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

Reply via email to