This is an automated email from the ASF dual-hosted git repository.
shashikant pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ozone.git
The following commit(s) were added to refs/heads/master by this push:
new 3d70fab HDDS-4710. PipelinePlacementPolicy altered to randomly pick
(#1821)
3d70fab is described below
commit 3d70fab346663b8b3fed5c49e43cf684a33c3ade
Author: Nibiru <[email protected]>
AuthorDate: Thu Jan 21 18:33:55 2021 +0800
HDDS-4710. PipelinePlacementPolicy altered to randomly pick (#1821)
Co-authored-by: xushaohong <[email protected]>
---
.../hadoop/hdds/scm/pipeline/PipelinePlacementPolicy.java | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipeline/PipelinePlacementPolicy.java
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipeline/PipelinePlacementPolicy.java
index 4d699a6..6bfaf95 100644
---
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipeline/PipelinePlacementPolicy.java
+++
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/pipeline/PipelinePlacementPolicy.java
@@ -354,17 +354,17 @@ public final class PipelinePlacementPolicy extends
SCMCommonPlacementPolicy {
* list that we are operating on.
*
* @param healthyNodes - Set of healthy nodes we can choose from.
- * @return chosen datanodDetails
+ * @return chosen datanodeDetails
*/
@Override
- public DatanodeDetails chooseNode(
- List<DatanodeDetails> healthyNodes) {
+ public DatanodeDetails chooseNode(final List<DatanodeDetails> healthyNodes) {
if (healthyNodes == null || healthyNodes.isEmpty()) {
return null;
}
- DatanodeDetails datanodeDetails = healthyNodes.get(0);
- healthyNodes.remove(datanodeDetails);
- return datanodeDetails;
+ DatanodeDetails selectedNode =
+ healthyNodes.get(getRand().nextInt(healthyNodes.size()));
+ healthyNodes.remove(selectedNode);
+ return selectedNode;
}
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]