You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by nd...@apache.org on 2020/03/17 16:01:21 UTC
[hbase] branch branch-2 updated: HBASE-23829 Get `-PrunSmallTests`
passing on JDK11
This is an automated email from the ASF dual-hosted git repository.
ndimiduk pushed a commit to branch branch-2
in repository https://gitbox.apache.org/repos/asf/hbase.git
The following commit(s) were added to refs/heads/branch-2 by this push:
new 33cb9fc HBASE-23829 Get `-PrunSmallTests` passing on JDK11
33cb9fc is described below
commit 33cb9fc93269e0ab0ef2840d28b9f8ba58df8535
Author: Nick Dimiduk <nd...@apache.org>
AuthorDate: Thu Feb 13 12:43:05 2020 -0800
HBASE-23829 Get `-PrunSmallTests` passing on JDK11
Signed-off-by: stack <st...@apache.org>
---
.../apache/hadoop/hbase/util/TestFutureUtils.java | 3 +-
hbase-hadoop2-compat/pom.xml | 8 ++
.../apache/hadoop/hbase/http/log/TestLogLevel.java | 2 +-
hbase-shaded/hbase-shaded-check-invariants/pom.xml | 7 --
.../pom.xml | 7 --
pom.xml | 93 +++++++++++++++++-----
6 files changed, 86 insertions(+), 34 deletions(-)
diff --git a/hbase-common/src/test/java/org/apache/hadoop/hbase/util/TestFutureUtils.java b/hbase-common/src/test/java/org/apache/hadoop/hbase/util/TestFutureUtils.java
index d560b24..0eef0a6 100644
--- a/hbase-common/src/test/java/org/apache/hadoop/hbase/util/TestFutureUtils.java
+++ b/hbase-common/src/test/java/org/apache/hadoop/hbase/util/TestFutureUtils.java
@@ -17,6 +17,7 @@
*/
package org.apache.hadoop.hbase.util;
+import static org.hamcrest.CoreMatchers.containsString;
import static org.hamcrest.CoreMatchers.startsWith;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertThat;
@@ -69,7 +70,7 @@ public class TestFutureUtils {
} catch (HBaseIOException e) {
assertEquals("Inject error!", e.getMessage());
StackTraceElement[] elements = e.getStackTrace();
- assertThat(elements[0].toString(), startsWith("java.lang.Thread.getStackTrace"));
+ assertThat(elements[0].toString(), containsString("java.lang.Thread.getStackTrace"));
assertThat(elements[1].toString(),
startsWith("org.apache.hadoop.hbase.util.FutureUtils.setStackTrace"));
assertThat(elements[2].toString(),
diff --git a/hbase-hadoop2-compat/pom.xml b/hbase-hadoop2-compat/pom.xml
index 7f443bf..8fb0938 100644
--- a/hbase-hadoop2-compat/pom.xml
+++ b/hbase-hadoop2-compat/pom.xml
@@ -139,6 +139,14 @@ limitations under the License.
<version>${hadoop.version}</version>
</dependency>
<dependency>
+ <!--
+ a missing transitive dependency on JDK9+ (obsoleted by Hadoop-3.3.0+, HADOOP-15775)
+ -->
+ <groupId>javax.activation</groupId>
+ <artifactId>javax.activation-api</artifactId>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>
diff --git a/hbase-http/src/test/java/org/apache/hadoop/hbase/http/log/TestLogLevel.java b/hbase-http/src/test/java/org/apache/hadoop/hbase/http/log/TestLogLevel.java
index fa3e613..2c5d0c4 100644
--- a/hbase-http/src/test/java/org/apache/hadoop/hbase/http/log/TestLogLevel.java
+++ b/hbase-http/src/test/java/org/apache/hadoop/hbase/http/log/TestLogLevel.java
@@ -480,7 +480,7 @@ public class TestLogLevel {
Throwable t = throwable;
while (t != null) {
String msg = t.toString();
- if (msg != null && msg.contains(substr)) {
+ if (msg != null && msg.toLowerCase().contains(substr.toLowerCase())) {
return;
}
t = t.getCause();
diff --git a/hbase-shaded/hbase-shaded-check-invariants/pom.xml b/hbase-shaded/hbase-shaded-check-invariants/pom.xml
index c51e8fe..ef50eb6 100644
--- a/hbase-shaded/hbase-shaded-check-invariants/pom.xml
+++ b/hbase-shaded/hbase-shaded-check-invariants/pom.xml
@@ -88,13 +88,6 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
- <dependencies>
- <dependency>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>extra-enforcer-rules</artifactId>
- <version>${extra.enforcer.version}</version>
- </dependency>
- </dependencies>
<executions>
<execution>
<id>enforce-banned-dependencies</id>
diff --git a/hbase-shaded/hbase-shaded-with-hadoop-check-invariants/pom.xml b/hbase-shaded/hbase-shaded-with-hadoop-check-invariants/pom.xml
index 4bf15d0..af2383e 100644
--- a/hbase-shaded/hbase-shaded-with-hadoop-check-invariants/pom.xml
+++ b/hbase-shaded/hbase-shaded-with-hadoop-check-invariants/pom.xml
@@ -77,13 +77,6 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
- <dependencies>
- <dependency>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>extra-enforcer-rules</artifactId>
- <version>${extra.enforcer.version}</version>
- </dependency>
- </dependencies>
<executions>
<execution>
<id>enforce-banned-dependencies</id>
diff --git a/pom.xml b/pom.xml
index 7cf6314..0929e6e 100755
--- a/pom.xml
+++ b/pom.xml
@@ -820,6 +820,23 @@
</execution>
</executions>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-enforcer-plugin</artifactId>
+ <version>${enforcer.version}</version>
+ <dependencies>
+ <dependency>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>extra-enforcer-rules</artifactId>
+ <version>${extra.enforcer.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>de.skuzzle.enforcer</groupId>
+ <artifactId>restrict-imports-enforcer-rule</artifactId>
+ <version>${restrict-imports.enforcer.version}</version>
+ </dependency>
+ </dependencies>
+ </plugin>
</plugins>
</pluginManagement>
<plugins>
@@ -858,20 +875,6 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
- <version>${enforcer.version}</version>
- <dependencies>
- <dependency>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>extra-enforcer-rules</artifactId>
- <version>${extra.enforcer.version}</version>
- </dependency>
- <dependency>
- <groupId>de.skuzzle.enforcer</groupId>
- <artifactId>restrict-imports-enforcer-rule</artifactId>
- <version>${restrict-imports.enforcer.version}</version>
- </dependency>
- </dependencies>
- <!-- version set by parent -->
<executions>
<execution>
<id>hadoop-profile-min-maven-min-java-banned-xerces</id>
@@ -2222,10 +2225,45 @@
<activation>
<jdk>[1.11,)</jdk>
</activation>
- <dependencyManagement>
- <dependencies>
- </dependencies>
- </dependencyManagement>
+ <properties>
+ <!-- TODO: replicate logic for windows support -->
+ <argLine>--add-opens=java.base/jdk.internal.ref=ALL-UNNAMED ${hbase-surefire.argLine}</argLine>
+ </properties>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-enforcer-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>hadoop3-profile-required</id>
+ <goals>
+ <goal>enforce</goal>
+ </goals>
+ <configuration>
+ <rules>
+ <requireProperty>
+ <!--
+ $ JAVA_HOME=... mvn -Dhadoop.profile=3.0 -PrunSmallTests help:active-profiles enforcer:display-info clean test
+ enforcer plugin does not see active profiles on sub-modules, so enforce based
+ on the presence of the activation property and value.
+ -->
+ <property>hadoop.profile</property>
+ <regex>.*3\.0$</regex>
+ <message>
+ HBase with JDK11 requires Hadoop3. Activate the profile with `-Dhadoop.profile=3.0`.
+ </message>
+ <regexMessage>
+ HBase with JDK11 requires Hadoop3. Activate the profile with `-Dhadoop.profile=3.0`.
+ </regexMessage>
+ </requireProperty>
+ </rules>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
</profile>
<!-- profile activated by the Jenkins patch testing job -->
<profile>
@@ -2699,6 +2737,16 @@
</exclusions>
</dependency>
<dependency>
+ <!--
+ a missing transitive dependency on JDK9+ (obsoleted by Hadoop-3.3.0+, HADOOP-15775)
+ duplicated here because hadoop-3.0 piggy-backs off the hadoop-2.0 profile.
+ -->
+ <groupId>javax.activation</groupId>
+ <artifactId>javax.activation-api</artifactId>
+ <version>1.2.0</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>${hadoop-two.version}</version>
@@ -3041,6 +3089,15 @@
</exclusions>
</dependency>
<dependency>
+ <!--
+ a missing transitive dependency on JDK9+ (obsoleted by Hadoop-3.3.0+, HADOOP-15775)
+ -->
+ <groupId>javax.activation</groupId>
+ <artifactId>javax.activation-api</artifactId>
+ <version>1.2.0</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-common</artifactId>
<type>test-jar</type>