From 8c3b007236e01c7ad4922d1bf611e68d09adcfa8 Mon Sep 17 00:00:00 2001 From: Colin Patrick Mccabe Date: Mon, 20 Oct 2014 18:33:11 -0700 Subject: [PATCH] HDFS-7154. Fix returning value of starting reconfiguration task (Lei Xu via Colin P. McCabe) (cherry picked from commit 7aab5fa1bd9386b036af45cd8206622a4555d74a) --- hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt | 3 +++ .../main/java/org/apache/hadoop/hdfs/tools/DFSAdmin.java | 7 ++++--- .../java/org/apache/hadoop/hdfs/tools/TestDFSAdmin.java | 3 +-- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt index d43c108e742..761f889d1d7 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt +++ b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt @@ -961,6 +961,9 @@ Release 2.6.0 - UNRELEASED HDFS-7167. NPE while running Mover if the given path is for a file. (jing9) + HDFS-7154. Fix returning value of starting reconfiguration task (Lei Xu via + Colin P. McCabe) + Release 2.5.1 - 2014-09-05 INCOMPATIBLE CHANGES diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/DFSAdmin.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/DFSAdmin.java index 298564e41a8..041bc3d26ed 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/DFSAdmin.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/tools/DFSAdmin.java @@ -1396,11 +1396,12 @@ public class DFSAdmin extends FsShell { ClientDatanodeProtocol dnProxy = getDataNodeProxy(address); dnProxy.startReconfiguration(); System.out.println("Started reconfiguration task on DataNode " + address); + return 0; } else { System.err.println("Node type " + nodeType + " does not support reconfiguration."); + return 1; } - return -1; } int getReconfigurationStatus(String nodeType, String address, @@ -1438,11 +1439,11 @@ public class DFSAdmin extends FsShell { } } catch (IOException e) { err.println("DataNode reloading configuration: " + e + "."); - return -1; + return 1; } } else { err.println("Node type " + nodeType + " does not support reconfiguration."); - return -1; + return 1; } return 0; } diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/tools/TestDFSAdmin.java b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/tools/TestDFSAdmin.java index 35c61f0255f..97589557ec2 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/tools/TestDFSAdmin.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/tools/TestDFSAdmin.java @@ -35,7 +35,6 @@ import java.io.File; import java.io.IOException; import java.io.PrintStream; import java.util.ArrayList; -import java.util.Arrays; import java.util.List; import java.util.Scanner; @@ -109,7 +108,7 @@ public class TestDFSAdmin { final int port = datanode.getIpcPort(); final String address = "localhost:" + port; - admin.startReconfiguration("datanode", address); + assertThat(admin.startReconfiguration("datanode", address), is(0)); List outputs = null; int count = 100;