HBASE-18782 Module untangling work
authorMichael Stack <stack@apache.org>
Sat, 9 Sep 2017 04:00:30 +0000 (21:00 -0700)
committerMichael Stack <stack@apache.org>
Mon, 11 Sep 2017 01:10:56 +0000 (18:10 -0700)
hbase-archetypes/hbase-client-project/pom.xml
hbase-examples/pom.xml
hbase-external-blockcache/pom.xml
hbase-external-blockcache/src/main/java/org/apache/hadoop/hbase/io/hfile/MemcachedBlockCache.java
hbase-it/pom.xml
hbase-protocol-shaded/pom.xml
hbase-protocol-shaded/src/main/java/org/apache/hadoop/hbase/util/ForeignExceptionUtil.java
hbase-protocol/pom.xml
hbase-protocol/src/main/java/org/apache/hadoop/hbase/util/ByteStringer.java
hbase-rest/pom.xml
hbase-spark-it/pom.xml

index bfb8d7b..489446a 100644 (file)
     </dependency>
     <dependency>
       <groupId>org.apache.hbase</groupId>
-      <artifactId>hbase-annotations</artifactId>
-      <version>${project.version}</version>
-      <type>test-jar</type>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.hbase</groupId>
       <artifactId>hbase-common</artifactId>
       <version>${project.version}</version>
     </dependency>
index 3227e39..c72a874 100644 (file)
     </dependency>
     <dependency>
       <groupId>org.apache.hbase</groupId>
-      <artifactId>hbase-annotations</artifactId>
-      <type>test-jar</type>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.hbase</groupId>
       <artifactId>hbase-common</artifactId>
     </dependency>
     <dependency>
         </dependency>
         <dependency>
           <groupId>org.apache.hadoop</groupId>
-          <artifactId>hadoop-annotations</artifactId>
-          <exclusions>
-            <exclusion>
-              <groupId>jdk.tools</groupId>
-              <artifactId>jdk.tools</artifactId>
-            </exclusion>
-          </exclusions>
-        </dependency>
-        <dependency>
-          <groupId>org.apache.hadoop</groupId>
           <artifactId>hadoop-minicluster</artifactId>
         </dependency>
       </dependencies>
index f832e46..53708d8 100644 (file)
   <dependencies>
     <dependency>
       <groupId>org.apache.hbase</groupId>
-      <artifactId>hbase-annotations</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.hbase</groupId>
       <artifactId>hbase-common</artifactId>
     </dependency>
     <dependency>
index 3df9d08..2fb8fdb 100644 (file)
@@ -28,7 +28,6 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hbase.HConstants;
-import org.apache.hadoop.hbase.classification.InterfaceAudience;
 import org.apache.hadoop.hbase.io.hfile.Cacheable.MemoryType;
 import org.apache.hadoop.hbase.nio.ByteBuff;
 import org.apache.hadoop.hbase.nio.SingleByteBuff;
@@ -52,7 +51,11 @@ import java.util.concurrent.ExecutionException;
  * good network connection to the HBase regionservers. Any other use will likely slow down HBase
  * greatly.
  */
-@InterfaceAudience.Private
+// @InterfaceAudience.Private
+// This class has NO InterfaceAudience. It is commented out. We do not want to import
+// InterfaceAudience. This would be only class in this module with the IA import and we do not want
+// to have this module depend annotations module just for one class.
+// NO InterfaceAudience defaults to mean InterfaceAudience.Private!
 public class MemcachedBlockCache implements BlockCache {
   private static final Log LOG = LogFactory.getLog(MemcachedBlockCache.class.getName());
 
index d813cd8..5642e3c 100644 (file)
     </dependency>
     <dependency>
       <groupId>org.apache.hbase</groupId>
-      <artifactId>hbase-hadoop-compat</artifactId>
-      <exclusions>
-        <exclusion>
-          <groupId>com.google.guava</groupId>
-          <artifactId>guava</artifactId>
-        </exclusion>
-      </exclusions>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.hbase</groupId>
       <artifactId>${compat.module}</artifactId>
       <version>${project.version}</version>
     </dependency>
index 77f5f12..ea7ed7a 100644 (file)
       <artifactId>hbase-shaded-protobuf</artifactId>
     </dependency>
     <dependency>
-      <groupId>org.apache.hbase</groupId>
-      <artifactId>hbase-annotations</artifactId>
-      <exclusions>
-        <exclusion>
-          <groupId>jdk.tools</groupId>
-          <artifactId>jdk.tools</artifactId>
-        </exclusion>
-      </exclusions>
-    </dependency>
-    <dependency>
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
       <scope>test</scope>
index 28b3909..db47945 100644 (file)
@@ -23,8 +23,6 @@ import java.lang.reflect.InvocationTargetException;
 import java.util.ArrayList;
 import java.util.List;
 
-import org.apache.hadoop.hbase.classification.InterfaceAudience;
-import org.apache.hadoop.hbase.classification.InterfaceStability;
 import org.apache.hadoop.hbase.shaded.protobuf.generated.ErrorHandlingProtos.ForeignExceptionMessage;
 import org.apache.hadoop.hbase.shaded.protobuf.generated.ErrorHandlingProtos.GenericExceptionMessage;
 import org.apache.hadoop.hbase.shaded.protobuf.generated.ErrorHandlingProtos.StackTraceElementMessage;
@@ -33,8 +31,12 @@ import org.apache.hadoop.hbase.shaded.protobuf.generated.ErrorHandlingProtos.Sta
  * Helper to convert Exceptions and StackTraces from/to protobuf.
  * (see ErrorHandling.proto for the internal of the proto messages)
  */
-@InterfaceAudience.Private
-@InterfaceStability.Evolving
+// @InterfaceAudience.Private
+// @InterfaceStability.Evolving
+// This class has NO InterfaceAudience. It is commented out. We do not want to import
+// InterfaceAudience. This would be only class in this module with the IA import and we do not want
+// to have this module depend annotations module just for one class.
+// NO InterfaceAudience defaults to mean InterfaceAudience.Private!
 public final class ForeignExceptionUtil {
   private ForeignExceptionUtil() { }
 
index 9e5661a..c55f82c 100644 (file)
   </build>
   <dependencies>
     <!-- Intra-project dependencies -->
-    <dependency>
-      <groupId>org.apache.hbase</groupId>
-      <artifactId>hbase-annotations</artifactId>
-      <exclusions>
-        <exclusion>
-          <groupId>jdk.tools</groupId>
-          <artifactId>jdk.tools</artifactId>
-        </exclusion>
-      </exclusions>
-    </dependency>
     <!-- General dependencies -->
     <dependency>
       <groupId>com.google.protobuf</groupId>
index afa9297..f36c44a 100644 (file)
@@ -19,7 +19,6 @@ package org.apache.hadoop.hbase.util;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.apache.hadoop.hbase.classification.InterfaceAudience;
 
 import com.google.protobuf.ByteString;
 import com.google.protobuf.HBaseZeroCopyByteString;
@@ -27,7 +26,11 @@ import com.google.protobuf.HBaseZeroCopyByteString;
 /**
  * Hack to workaround HBASE-10304 issue that keeps bubbling up when a mapreduce context.
  */
-@InterfaceAudience.Private
+// @InterfaceAudience.Private
+// This class has NO InterfaceAudience. It is commented out. We do not want to import
+// InterfaceAudience. This would be only class in this module with the IA import and we do not want
+// to have this module depend annotations module just for one class.
+// NO InterfaceAudience defaults to mean InterfaceAudience.Private!
 public class ByteStringer {
   private static final Log LOG = LogFactory.getLog(ByteStringer.class);
 
index 7ce6d57..5141eb5 100644 (file)
     </dependency>
     <dependency>
       <groupId>org.apache.hbase</groupId>
-      <artifactId>hbase-hadoop-compat</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.hbase</groupId>
-      <artifactId>hbase-hadoop-compat</artifactId>
-      <type>test-jar</type>
-      <scope>test</scope>
-    </dependency>
-    <!-- REMOVE
-    <dependency>
-      <groupId>org.apache.hbase</groupId>
-      <artifactId>${compat.module}</artifactId>
-      <version>${project.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.hbase</groupId>
-      <artifactId>${compat.module}</artifactId>
-      <version>${project.version}</version>
-      <type>test-jar</type>
-      <scope>test</scope>
-    </dependency>
--->
-    <dependency>
-      <groupId>org.apache.hbase</groupId>
       <artifactId>hbase-server</artifactId>
       <type>test-jar</type>
       <scope>test</scope>
index 761ab7f..a71c9b8 100644 (file)
     </dependency>
     <dependency>
       <groupId>org.apache.hbase</groupId>
-      <artifactId>hbase-hadoop-compat</artifactId>
-        <exclusions>
-          <exclusion>
-            <groupId>com.google.guava</groupId>
-            <artifactId>guava</artifactId>
-          </exclusion>
-        </exclusions>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.hbase</groupId>
       <artifactId>${compat.module}</artifactId>
       <version>${project.version}</version>
     </dependency>