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

Lei (Eddy) Xu commented on HDFS-7035:
-------------------------------------

Hi, [~arpitagarwal] Thanks very much for looking into this.

This patch serves three purposes: 

# For the volume management functionality, it refactors the loading storage 
directories, so that if there is a failure during the loading _a storage 
directory_,  the partial loaded metadata belonging to this storage directory is 
completed removed from {{DataStorage}} and {{BlockStorage}},  all partial 
loaded directories are unlocked, and etc. It is basically for more gracefully 
to handle the failures of loading volumes when {{DataNode}} is running.
# It eliminates the duplicated logic in {{DataStorage}} and 
{{BlockSlicePoolStorage}} to simplify the failure recovery logic needed to be 
handle from {{DataNode}}.
# Also it changes the order to add storage directories. In the original code, 
all storage directories for one namespace is loading in batch. This behavior is 
changed to add one storage directory for one namespace at a time, also for 
easier failure handling for upper level (e.g., HDFS-6727) in the hot swap 
volume scenarios.

[~arpitagarwal] do the above answer your questions? It would be great to if you 
could give me some suggestions on this.


> Refactor DataStorage and BlockSlicePoolStorage 
> -----------------------------------------------
>
>                 Key: HDFS-7035
>                 URL: https://issues.apache.org/jira/browse/HDFS-7035
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: datanode
>    Affects Versions: 2.5.0
>            Reporter: Lei (Eddy) Xu
>            Assignee: Lei (Eddy) Xu
>         Attachments: HDFS-7035.000.combo.patch, HDFS-7035.000.patch, 
> HDFS-7035.001.combo.patch, HDFS-7035.001.patch, HDFS-7035.002.patch
>
>
> {{DataStorage}} and {{BlockPoolSliceStorage}} share many similar code path. 
> This jira extracts the common part of these two classes to simplify the logic 
> for both.
> This is the ground work for handling partial failures during hot swapping 
> volumes.



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

Reply via email to