Ver código fonte

HDDS-1597. Remove hdds-server-scm dependency from ozone-common (#969)

* HDDS-1597. Remove hdds-server-scm dependency from ozone-common. Contributed by Elek, Marton.

* checkstyle fixes

* revert the import reorder of HddsUtil

* add javadoc

* switch back to the commons-lang2

* fix typo

* fix metrics core classpath problem (+rebase fix)
Elek, Márton 5 anos atrás
pai
commit
004207996c

+ 0 - 0
hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/exceptions/SCMException.java → hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/exceptions/SCMException.java


+ 0 - 0
hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/exceptions/package-info.java → hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/exceptions/package-info.java


+ 4 - 6
hadoop-hdds/container-service/pom.xml

@@ -37,6 +37,10 @@ https://maven.apache.org/xsd/maven-4.0.0.xsd">
       <groupId>org.apache.hadoop</groupId>
       <artifactId>hadoop-hdds-server-framework</artifactId>
     </dependency>
+    <dependency>
+      <groupId>io.dropwizard.metrics</groupId>
+      <artifactId>metrics-core</artifactId>
+    </dependency>
 
     <dependency>
       <groupId>org.mockito</groupId>
@@ -56,12 +60,6 @@ https://maven.apache.org/xsd/maven-4.0.0.xsd">
       <version>3.0.1</version>
       <scope>provided</scope>
     </dependency>
-
-    <dependency>
-      <groupId>io.dropwizard.metrics</groupId>
-      <artifactId>metrics-core</artifactId>
-      <scope>test</scope>
-    </dependency>
   </dependencies>
 
   <build>

+ 21 - 0
hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/server/ServerUtils.java

@@ -203,4 +203,25 @@ public final class ServerUtils {
     conf.set(HddsConfigKeys.OZONE_METADATA_DIRS, path);
   }
 
+  /**
+   * Returns with the service specific metadata directory.
+   * <p>
+   * If the directory is missing the method tries to create it.
+   *
+   * @param conf The ozone configuration object
+   * @param key The configuration key which specify the directory.
+   * @return The path of the directory.
+   */
+  public static File getDBPath(Configuration conf, String key) {
+    final File dbDirPath =
+        getDirectoryFromConfig(conf, key, "OM");
+    if (dbDirPath != null) {
+      return dbDirPath;
+    }
+
+    LOG.warn("{} is not configured. We recommend adding this setting. "
+            + "Falling back to {} instead.", key,
+        HddsConfigKeys.OZONE_METADATA_DIRS);
+    return ServerUtils.getOzoneMetaDirPath(conf);
+  }
 }

+ 4 - 0
hadoop-hdds/server-scm/pom.xml

@@ -100,6 +100,10 @@ https://maven.apache.org/xsd/maven-4.0.0.xsd">
       <groupId>org.bouncycastle</groupId>
       <artifactId>bcprov-jdk15on</artifactId>
     </dependency>
+    <dependency>
+      <groupId>io.dropwizard.metrics</groupId>
+      <artifactId>metrics-core</artifactId>
+    </dependency>
     <dependency>
       <groupId>com.google.code.findbugs</groupId>
       <artifactId>findbugs</artifactId>

+ 2 - 19
hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ScmUtils.java

@@ -18,18 +18,13 @@
 
 package org.apache.hadoop.hdds.scm;
 
-
-import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.hdds.HddsConfigKeys;
 import org.apache.hadoop.hdds.protocol.proto.HddsProtos.ScmOps;
-import org.apache.hadoop.hdds.scm.safemode.Precheck;
 import org.apache.hadoop.hdds.scm.exceptions.SCMException;
-import org.apache.hadoop.hdds.server.ServerUtils;
+import org.apache.hadoop.hdds.scm.safemode.Precheck;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.io.File;
-
 /**
  * SCM utility class.
  */
@@ -53,16 +48,4 @@ public final class ScmUtils {
     }
   }
 
-  public static File getDBPath(Configuration conf, String dbDirectory) {
-    final File dbDirPath =
-        ServerUtils.getDirectoryFromConfig(conf, dbDirectory, "OM");
-    if (dbDirPath != null) {
-      return dbDirPath;
-    }
-
-    LOG.warn("{} is not configured. We recommend adding this setting. "
-            + "Falling back to {} instead.", dbDirectory,
-        HddsConfigKeys.OZONE_METADATA_DIRS);
-    return ServerUtils.getOzoneMetaDirPath(conf);
-  }
 }

+ 0 - 4
hadoop-ozone/common/pom.xml

@@ -60,10 +60,6 @@ https://maven.apache.org/xsd/maven-4.0.0.xsd">
       <groupId>org.apache.hadoop</groupId>
       <artifactId>hadoop-hdds-server-framework</artifactId>
     </dependency>
-    <dependency>
-      <groupId>org.apache.hadoop</groupId>
-      <artifactId>hadoop-hdds-server-scm</artifactId>
-    </dependency>
     <dependency>
       <groupId>org.apache.hadoop</groupId>
       <artifactId>hadoop-hdds-container-service</artifactId>

+ 2 - 2
hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/OmUtils.java

@@ -42,8 +42,8 @@ import org.apache.commons.compress.utils.IOUtils;
 import org.apache.commons.lang3.RandomStringUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.hdds.scm.ScmUtils;
 import org.apache.hadoop.hdds.scm.HddsServerUtil;
+import org.apache.hadoop.hdds.server.ServerUtils;
 import org.apache.hadoop.net.NetUtils;
 import org.apache.hadoop.ozone.om.OMConfigKeys;
 import org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos;
@@ -172,7 +172,7 @@ public final class OmUtils {
    * @return File path, after creating all the required Directories.
    */
   public static File getOmDbDir(Configuration conf) {
-    return ScmUtils.getDBPath(conf, OMConfigKeys.OZONE_OM_DB_DIRS);
+    return ServerUtils.getDBPath(conf, OMConfigKeys.OZONE_OM_DB_DIRS);
   }
 
   /**

+ 9 - 0
hadoop-ozone/integration-test/pom.xml

@@ -34,6 +34,10 @@ https://maven.apache.org/xsd/maven-4.0.0.xsd">
       <groupId>org.apache.hadoop</groupId>
       <artifactId>hadoop-ozone-common</artifactId>
     </dependency>
+    <dependency>
+      <groupId>org.apache.hadoop</groupId>
+      <artifactId>hadoop-hdds-server-scm</artifactId>
+    </dependency>
     <dependency>
       <groupId>org.apache.hadoop</groupId>
       <artifactId>hadoop-ozone-ozone-manager</artifactId>
@@ -64,6 +68,11 @@ https://maven.apache.org/xsd/maven-4.0.0.xsd">
       <groupId>org.apache.hadoop</groupId>
       <artifactId>hadoop-ozone-client</artifactId>
     </dependency>
+    <dependency>
+      <groupId>commons-lang</groupId>
+      <artifactId>commons-lang</artifactId>
+      <scope>test</scope>
+    </dependency>
     <dependency>
       <groupId>org.apache.hadoop</groupId>
       <artifactId>hadoop-ozone-ozone-manager</artifactId>

+ 0 - 0
hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/TestKeyManagerImpl.java → hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestKeyManagerImpl.java


+ 5 - 0
hadoop-ozone/pom.xml

@@ -220,6 +220,11 @@
         <artifactId>bcprov-jdk15on</artifactId>
         <version>${bouncycastle.version}</version>
       </dependency>
+      <dependency>
+        <groupId>commons-lang</groupId>
+        <artifactId>commons-lang</artifactId>
+        <version>2.6</version>
+      </dependency>
     </dependencies>
   </dependencyManagement>
   <dependencies>

+ 5 - 0
hadoop-ozone/tools/pom.xml

@@ -37,6 +37,11 @@ https://maven.apache.org/xsd/maven-4.0.0.xsd">
       <groupId>org.apache.hadoop</groupId>
       <artifactId>hadoop-ozone-common</artifactId>
     </dependency>
+    <!-- Genesis requires server side components -->
+    <dependency>
+      <groupId>org.apache.hadoop</groupId>
+      <artifactId>hadoop-hdds-server-scm</artifactId>
+    </dependency>
     <dependency>
       <groupId>org.apache.hadoop</groupId>
       <artifactId>hadoop-ozone-client</artifactId>