HDFS-13175. Add more information for checking argument in DiskBalancerVolume. Contributed by Lei (Eddy) Xu.
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/121e1e12 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/121e1e12 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/121e1e12 Branch: refs/heads/HDFS-7240 Commit: 121e1e1280c7b019f6d2cc3ba9eae1ead0dd8408 Parents: b0d3c87 Author: Anu Engineer <[email protected]> Authored: Tue Feb 20 19:16:30 2018 -0800 Committer: Anu Engineer <[email protected]> Committed: Tue Feb 20 19:16:30 2018 -0800 ---------------------------------------------------------------------- .../server/diskbalancer/command/PlanCommand.java | 16 ++++++++-------- .../connectors/DBNameNodeConnector.java | 2 -- .../diskbalancer/datamodel/DiskBalancerVolume.java | 4 +++- 3 files changed, 11 insertions(+), 11 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/121e1e12/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/diskbalancer/command/PlanCommand.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/diskbalancer/command/PlanCommand.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/diskbalancer/command/PlanCommand.java index 6e45b96..b765885 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/diskbalancer/command/PlanCommand.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/diskbalancer/command/PlanCommand.java @@ -124,6 +124,14 @@ public class PlanCommand extends Command { throw new IllegalArgumentException("Unable to find the specified node. " + cmd.getOptionValue(DiskBalancerCLI.PLAN)); } + + try (FSDataOutputStream beforeStream = create(String.format( + DiskBalancerCLI.BEFORE_TEMPLATE, + cmd.getOptionValue(DiskBalancerCLI.PLAN)))) { + beforeStream.write(getCluster().toJson() + .getBytes(StandardCharsets.UTF_8)); + } + this.thresholdPercentage = getThresholdPercentage(cmd); LOG.debug("threshold Percentage is {}", this.thresholdPercentage); @@ -138,14 +146,6 @@ public class PlanCommand extends Command { plan = plans.get(0); } - - try (FSDataOutputStream beforeStream = create(String.format( - DiskBalancerCLI.BEFORE_TEMPLATE, - cmd.getOptionValue(DiskBalancerCLI.PLAN)))) { - beforeStream.write(getCluster().toJson() - .getBytes(StandardCharsets.UTF_8)); - } - try { if (plan != null && plan.getVolumeSetPlans().size() > 0) { outputLine = String.format("Writing plan to:"); http://git-wip-us.apache.org/repos/asf/hadoop/blob/121e1e12/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/diskbalancer/connectors/DBNameNodeConnector.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/diskbalancer/connectors/DBNameNodeConnector.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/diskbalancer/connectors/DBNameNodeConnector.java index b044baf..2d8ba8a 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/diskbalancer/connectors/DBNameNodeConnector.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/diskbalancer/connectors/DBNameNodeConnector.java @@ -144,8 +144,6 @@ class DBNameNodeConnector implements ClusterConnector { // Does it make sense ? Balancer does do that. Right now // we only deal with volumes and not blockPools - volume.setUsed(report.getDfsUsed()); - volume.setUuid(storage.getStorageID()); // we will skip this volume for disk balancer if http://git-wip-us.apache.org/repos/asf/hadoop/blob/121e1e12/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/diskbalancer/datamodel/DiskBalancerVolume.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/diskbalancer/datamodel/DiskBalancerVolume.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/diskbalancer/datamodel/DiskBalancerVolume.java index 47a925c..a9fd7f0 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/diskbalancer/datamodel/DiskBalancerVolume.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/diskbalancer/datamodel/DiskBalancerVolume.java @@ -269,7 +269,9 @@ public class DiskBalancerVolume { * @param dfsUsedSpace - dfsUsedSpace for this volume. */ public void setUsed(long dfsUsedSpace) { - Preconditions.checkArgument(dfsUsedSpace < this.getCapacity()); + Preconditions.checkArgument(dfsUsedSpace < this.getCapacity(), + "DiskBalancerVolume.setUsed: dfsUsedSpace(%s) < capacity(%s)", + dfsUsedSpace, getCapacity()); this.used = dfsUsedSpace; } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
