[
https://issues.apache.org/jira/browse/HDFS-7035?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Lei (Eddy) Xu updated HDFS-7035:
--------------------------------
Attachment: HDFS-7035.012.patch
[~cmccabe] Thanks for your detailed comments!
In this updated patch, I have made the following major changes:
* Merge the changes from HDFS-7173 so that this patch can be more
self-contained.
* Remove {{StagedAddVolume}} interface and rename
{{DataStorage#DataStorageAddedVolume}} to {{DataStorage#VolumeBuilder}}.
* Removed {{FsDatasetImpl#StagedAddVolume}}
* Moved the logic of calling {{DataStorage#addVolume}} from
{{DataNode#refreshVolume}} to {{FsDatasetImpl#addVolume}}.
* Change {{DataNode#refreshVolume}} to {{syncrhonized}} function so that there
will be no starting-up / shutting-down DN activities.
* Move {{DataNode#conf}} and {{DataNode#dataDir}} recovery into the {{finally}}
segment.
> Make adding volume an atomic operation.
> ---------------------------------------
>
> 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,
> HDFS-7035.003.patch, HDFS-7035.003.patch, HDFS-7035.004.patch,
> HDFS-7035.005.patch, HDFS-7035.007.patch, HDFS-7035.008.patch,
> HDFS-7035.009.patch, HDFS-7035.010.patch, HDFS-7035.010.patch,
> HDFS-7035.011.patch, HDFS-7035.012.patch
>
>
> It refactors {{DataStorage}} and {{BlockPoolSliceStorage}} to reduce the
> duplicate code and supports atomic adding volume operations. Also it
> parallels loading data volume operation: each thread loads one volume.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)