[
https://issues.apache.org/jira/browse/HDFS-7833?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14366196#comment-14366196
]
Lei (Eddy) Xu commented on HDFS-7833:
-------------------------------------
Hi, [~cnauroth], thanks a lot for reporting this issue. I am trying to
understand this bug. It seems to me that if we follow the same old logic, we
need also update {{FsDdatasetImpl#validVolsRequired()}} when it removes a
directory _intentionly_ , but do not update it when the {{FsVolumeImpl}} is
removed due to {{checkDirs}}. As an alternative, since now failure volumes are
kept in {{FsDatasetImp#volumeFailureInfos}}, can we just let
{{FsDatasetImpl#hasEnoughResources()}} become:
{code}
public boolean hasEnoughResource() {
return volumeFailureInfos.size() < volFailuresTolerated;
}
{code}
Does it make sense to you, [~cnauroth]?
> DataNode reconfiguration does not recalculate valid volumes required, based
> on configured failed volumes tolerated.
> -------------------------------------------------------------------------------------------------------------------
>
> Key: HDFS-7833
> URL: https://issues.apache.org/jira/browse/HDFS-7833
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: datanode
> Affects Versions: 2.6.0
> Reporter: Chris Nauroth
> Assignee: Lei (Eddy) Xu
>
> DataNode reconfiguration never recalculates
> {{FsDatasetImpl#validVolsRequired}}. This may cause incorrect behavior of
> the {{dfs.datanode.failed.volumes.tolerated}} property if reconfiguration
> causes the DataNode to run with a different total number of volumes.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)