Repository: hadoop
Updated Branches:
  refs/heads/ozone-0.2 aa199a83c -> 62b02e03c


HDDS-395. TestOzoneRestWithMiniCluster fails with "Unable to read ROCKDB 
config".
Contributed by Dinesh Chitlangia.

(cherry picked from commit c18eb9780163f8995c21b7d1b7b2b04140e4bc0a)


Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/62b02e03
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/62b02e03
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/62b02e03

Branch: refs/heads/ozone-0.2
Commit: 62b02e03c89f64eb2020a983086de8b4a6adb52a
Parents: aa199a8
Author: Anu Engineer <[email protected]>
Authored: Wed Sep 12 14:09:15 2018 -0700
Committer: Anu Engineer <[email protected]>
Committed: Wed Sep 12 14:20:01 2018 -0700

----------------------------------------------------------------------
 .../hadoop/utils/db/DBConfigFromFile.java       | 34 +++++++++++++-------
 1 file changed, 23 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hadoop/blob/62b02e03/hadoop-hdds/common/src/main/java/org/apache/hadoop/utils/db/DBConfigFromFile.java
----------------------------------------------------------------------
diff --git 
a/hadoop-hdds/common/src/main/java/org/apache/hadoop/utils/db/DBConfigFromFile.java
 
b/hadoop-hdds/common/src/main/java/org/apache/hadoop/utils/db/DBConfigFromFile.java
index 753a460..94370b1 100644
--- 
a/hadoop-hdds/common/src/main/java/org/apache/hadoop/utils/db/DBConfigFromFile.java
+++ 
b/hadoop-hdds/common/src/main/java/org/apache/hadoop/utils/db/DBConfigFromFile.java
@@ -26,6 +26,8 @@ import org.rocksdb.DBOptions;
 import org.rocksdb.Env;
 import org.rocksdb.OptionsUtil;
 import org.rocksdb.RocksDBException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import java.io.File;
 import java.io.IOException;
@@ -44,6 +46,9 @@ import java.util.List;
  * responsibility.
  */
 public final class DBConfigFromFile {
+  private static final Logger LOG =
+      LoggerFactory.getLogger(DBConfigFromFile.class);
+
   public static final String CONFIG_DIR = "HADOOP_CONF_DIR";
 
   private DBConfigFromFile() {
@@ -59,8 +64,11 @@ public final class DBConfigFromFile {
     }
 
     if (StringUtil.isBlank(path)) {
-      throw new IOException("Unable to find the configuration directory. "
-          + "Please make sure that HADOOP_CONF_DIR is setup correctly ");
+      LOG.debug("Unable to find the configuration directory. "
+          + "Please make sure that HADOOP_CONF_DIR is setup correctly.");
+    }
+    if(StringUtil.isBlank(path)){
+      return null;
     }
     return new File(path);
 
@@ -115,17 +123,21 @@ public final class DBConfigFromFile {
     //TODO: Add Documentation on how to support RocksDB Mem Env.
     Env env = Env.getDefault();
     DBOptions options = null;
-    Path optionsFile = Paths.get(getConfigLocation().toString(),
-        getOptionsFileNameFromDB(dbFileName));
+    File configLocation = getConfigLocation();
+    if(configLocation != null &&
+        StringUtil.isNotBlank(configLocation.toString())){
+      Path optionsFile = Paths.get(configLocation.toString(),
+          getOptionsFileNameFromDB(dbFileName));
 
-    if (optionsFile.toFile().exists()) {
-      options = new DBOptions();
-      try {
-        OptionsUtil.loadOptionsFromFile(optionsFile.toString(),
-            env, options, cfDescs, true);
+      if (optionsFile.toFile().exists()) {
+        options = new DBOptions();
+        try {
+          OptionsUtil.loadOptionsFromFile(optionsFile.toString(),
+              env, options, cfDescs, true);
 
-      } catch (RocksDBException rdEx) {
-        RDBTable.toIOException("Unable to find/open Options file.", rdEx);
+        } catch (RocksDBException rdEx) {
+          RDBTable.toIOException("Unable to find/open Options file.", rdEx);
+        }
       }
     }
     return options;


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to