You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "Lei (Eddy) Xu (JIRA)" <ji...@apache.org> on 2015/01/14 22:42:36 UTC
[jira] [Updated] (HDFS-7610) Should use
StorageDirectory.getCurrentDIr() to construct FsVolumeImpl
[ https://issues.apache.org/jira/browse/HDFS-7610?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Lei (Eddy) Xu updated HDFS-7610:
--------------------------------
Attachment: HDFS-7610.000.patch
This patch changes:
1. Use {{StorageDirectory.getCurrentDir}} to construct {{FsVolumeImpl}} when adding the volume dynamically.
2. Changed removeVolume() to compare volumes using {{File#getCanonicalFile()}}.
3. Added a test case to verify that a newly added volume can be located and removed.
> Should use StorageDirectory.getCurrentDIr() to construct FsVolumeImpl
> ---------------------------------------------------------------------
>
> Key: HDFS-7610
> URL: https://issues.apache.org/jira/browse/HDFS-7610
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: datanode
> Affects Versions: 2.6.0
> Reporter: Lei (Eddy) Xu
> Assignee: Lei (Eddy) Xu
> Attachments: HDFS-7610.000.patch
>
>
> In the hot swap feature, {{FsDatasetImpl#addVolume}} uses the base volume dir (e.g. "{{/foo/data0}}", instead of volume's current dir "{{/foo/data/current}}" to construct {{FsVolumeImpl}}. As a result, DataNode can not remove this newly added volume, because its {{FsVolumeImpl#getBasePath}} returns "{{/foo}}".
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)