You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by el...@apache.org on 2018/09/10 11:38:54 UTC
hadoop git commit: HDDS-417. Ambiguous error message when using
genconf tool. Contributed by Dinesh Chitlangia.
Repository: hadoop
Updated Branches:
refs/heads/trunk 0da49642f -> 585a4f96d
HDDS-417. Ambiguous error message when using genconf tool. Contributed by Dinesh Chitlangia.
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/585a4f96
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/585a4f96
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/585a4f96
Branch: refs/heads/trunk
Commit: 585a4f96d78643bd656752efd6998b34287cfe09
Parents: 0da4964
Author: Márton Elek <el...@apache.org>
Authored: Mon Sep 10 13:16:28 2018 +0200
Committer: Márton Elek <el...@apache.org>
Committed: Mon Sep 10 13:37:48 2018 +0200
----------------------------------------------------------------------
...TestGenerateOzoneRequiredConfigurations.java | 27 +++++++++++++++++---
.../GenerateOzoneRequiredConfigurations.java | 12 ++++-----
2 files changed, 30 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hadoop/blob/585a4f96/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/genconf/TestGenerateOzoneRequiredConfigurations.java
----------------------------------------------------------------------
diff --git a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/genconf/TestGenerateOzoneRequiredConfigurations.java b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/genconf/TestGenerateOzoneRequiredConfigurations.java
index 75c15a4..8c75ebb 100644
--- a/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/genconf/TestGenerateOzoneRequiredConfigurations.java
+++ b/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/genconf/TestGenerateOzoneRequiredConfigurations.java
@@ -95,8 +95,8 @@ public class TestGenerateOzoneRequiredConfigurations {
try (PrintStream ps = new PrintStream(outContent)) {
System.setOut(ps);
GenerateOzoneRequiredConfigurations.main(args);
- Assert.assertThat(outContent.toString(),
- CoreMatchers.containsString("ozone-site.xml has been generated at"));
+ Assert.assertThat(outContent.toString(), CoreMatchers.containsString(
+ "ozone-site.xml has been generated at"));
System.setOut(oldStream);
}
}
@@ -123,8 +123,29 @@ public class TestGenerateOzoneRequiredConfigurations {
tempPath.setWritable(true);
}
+ /**
+ * Test to avoid generating ozone-site.xml when invalid permission.
+ * @throws Exception
+ */
+ @Test
+ public void generateConfigurationsFailureForInvalidPath() throws Exception {
+ File tempPath = getRandomTempDir();
+ tempPath.setReadOnly();
+ String[] args = new String[]{"-output",
+ tempPath.getAbsolutePath() + "/ozone-site.xml"};
+ GenerateOzoneRequiredConfigurations.main(args);
+
+ Assert.assertEquals("Path is invalid", false,
+ GenerateOzoneRequiredConfigurations.isValidPath(args[1]));
+
+ Assert.assertEquals("Config file not generated", 1,
+ GenerateOzoneRequiredConfigurations.generateConfigurations(args[1]));
+ tempPath.setWritable(true);
+ }
+
private File getRandomTempDir() throws IOException {
- File tempDir = new File(outputBaseDir, RandomStringUtils.randomAlphanumeric(5));
+ File tempDir = new File(outputBaseDir,
+ RandomStringUtils.randomAlphanumeric(5));
FileUtils.forceMkdir(tempDir);
return tempDir;
}
http://git-wip-us.apache.org/repos/asf/hadoop/blob/585a4f96/hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/genconf/GenerateOzoneRequiredConfigurations.java
----------------------------------------------------------------------
diff --git a/hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/genconf/GenerateOzoneRequiredConfigurations.java b/hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/genconf/GenerateOzoneRequiredConfigurations.java
index 6296c9d..688b735 100644
--- a/hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/genconf/GenerateOzoneRequiredConfigurations.java
+++ b/hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/genconf/GenerateOzoneRequiredConfigurations.java
@@ -25,6 +25,7 @@ import javax.xml.bind.JAXBException;
import javax.xml.bind.Marshaller;
import java.io.File;
import java.net.URL;
+import java.nio.file.Files;
import java.nio.file.InvalidPathException;
import java.nio.file.Paths;
import java.util.ArrayList;
@@ -94,18 +95,17 @@ public final class GenerateOzoneRequiredConfigurations {
}
/**
- * Check if the path is valid.
+ * Check if the path is valid directory.
*
* @param path
- * @return true, if path is valid, else return false
+ * @return true, if path is valid directory, else return false
*/
public static boolean isValidPath(String path) {
try {
- Paths.get(path);
+ return Files.isDirectory(Paths.get(path));
} catch (InvalidPathException | NullPointerException ex) {
return false;
}
- return true;
}
/**
@@ -129,12 +129,12 @@ public final class GenerateOzoneRequiredConfigurations {
public static int generateConfigurations(String path) throws JAXBException {
if (!isValidPath(path)) {
- System.out.println("Invalid path or insufficient permission");
+ System.out.println("Invalid directory path.");
return FAILURE;
}
if (!canWrite(path)) {
- System.out.println("Invalid path or insufficient permission");
+ System.out.println("Insufficient permission.");
return FAILURE;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-commits-help@hadoop.apache.org