This is an automated email from the ASF dual-hosted git repository.

inigoiri pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/hadoop.git


The following commit(s) were added to refs/heads/trunk by this push:
     new b1e55cf  HDFS-14461. RBF: Fix intermittently failing kerberos related 
unit test. Contributed by Xiaoqiao He.
b1e55cf is described below

commit b1e55cfb557056306db92b4a74f7b0288fd193ee
Author: Inigo Goiri <[email protected]>
AuthorDate: Thu Sep 26 15:26:23 2019 -0700

    HDFS-14461. RBF: Fix intermittently failing kerberos related unit test. 
Contributed by Xiaoqiao He.
---
 .../hadoop/fs/contract/router/RouterHDFSContract.java   | 17 +++++++++++++----
 .../hadoop/fs/contract/router/SecurityConfUtil.java     | 15 +++++++++++++--
 .../router/TestRouterHDFSContractAppendSecure.java      |  4 +---
 .../router/TestRouterHDFSContractConcatSecure.java      |  5 +----
 .../router/TestRouterHDFSContractCreateSecure.java      |  5 +----
 .../router/TestRouterHDFSContractDelegationToken.java   |  2 +-
 .../router/TestRouterHDFSContractDeleteSecure.java      |  4 +---
 .../TestRouterHDFSContractGetFileStatusSecure.java      |  5 +----
 .../router/TestRouterHDFSContractMkdirSecure.java       |  5 +----
 .../router/TestRouterHDFSContractOpenSecure.java        |  5 +----
 .../router/TestRouterHDFSContractRenameSecure.java      |  5 +----
 .../TestRouterHDFSContractRootDirectorySecure.java      |  5 +----
 .../router/TestRouterHDFSContractSeekSecure.java        |  5 +----
 .../router/TestRouterHDFSContractSetTimesSecure.java    |  5 +----
 .../security/TestRouterHttpDelegationToken.java         |  1 +
 15 files changed, 39 insertions(+), 49 deletions(-)

diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/RouterHDFSContract.java
 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/RouterHDFSContract.java
index eaf874b..472a789 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/RouterHDFSContract.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/RouterHDFSContract.java
@@ -43,16 +43,20 @@ public class RouterHDFSContract extends HDFSContract {
   }
 
   public static void createCluster() throws IOException {
-    createCluster(null);
+    createCluster(false);
   }
 
-  public static void createCluster(Configuration conf) throws IOException {
-    createCluster(true, 2, conf);
+  public static void createCluster(boolean security) throws IOException {
+    createCluster(true, 2, security);
   }
 
   public static void createCluster(
-      boolean ha, int numNameServices, Configuration conf) throws IOException {
+      boolean ha, int numNameServices, boolean security) throws IOException {
     try {
+      Configuration conf = null;
+      if (security) {
+        conf = SecurityConfUtil.initSecurity();
+      }
       cluster = new MiniRouterDFSCluster(ha, numNameServices, conf);
 
       // Start NNs and DNs and wait until ready
@@ -88,6 +92,11 @@ public class RouterHDFSContract extends HDFSContract {
       cluster.shutdown();
       cluster = null;
     }
+    try {
+      SecurityConfUtil.destroy();
+    } catch (Exception e) {
+      throw new IOException("Cannot destroy security context", e);
+    }
   }
 
   public static MiniDFSCluster getCluster() {
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/SecurityConfUtil.java
 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/SecurityConfUtil.java
index 6154eee..47ab0d2 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/SecurityConfUtil.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/SecurityConfUtil.java
@@ -65,6 +65,9 @@ public final class SecurityConfUtil {
   private static final String ROUTER_USER_NAME = "router";
   private static final String PREFIX = "hadoop.http.authentication.";
 
+  private static MiniKdc kdc;
+  private static File baseDir;
+
   private static String spnegoPrincipal;
   private static String routerPrincipal;
 
@@ -78,14 +81,14 @@ public final class SecurityConfUtil {
 
   public static Configuration initSecurity() throws Exception {
     // delete old test dir
-    File baseDir = GenericTestUtils.getTestDir(
+    baseDir = GenericTestUtils.getTestDir(
         SecurityConfUtil.class.getSimpleName());
     FileUtil.fullyDelete(baseDir);
     assertTrue(baseDir.mkdirs());
 
     // start a mini kdc with default conf
     Properties kdcConf = MiniKdc.createConf();
-    MiniKdc kdc = new MiniKdc(kdcConf, baseDir);
+    kdc = new MiniKdc(kdcConf, baseDir);
     kdc.start();
 
     Configuration conf = new HdfsConfiguration();
@@ -156,4 +159,12 @@ public final class SecurityConfUtil {
 
     return conf;
   }
+
+  public static void destroy() throws Exception {
+    if (kdc != null) {
+      kdc.stop();
+      FileUtil.fullyDelete(baseDir);
+      KeyStoreTestUtil.cleanupSSLConfig(keystoresDir, sslConfDir);
+    }
+  }
 }
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractAppendSecure.java
 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractAppendSecure.java
index fe4951d..33f59f0 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractAppendSecure.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractAppendSecure.java
@@ -21,8 +21,6 @@ import org.apache.hadoop.fs.contract.AbstractFSContract;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 
-import static 
org.apache.hadoop.fs.contract.router.SecurityConfUtil.initSecurity;
-
 /**
  * Test secure append operations on the Router-based FS.
  */
@@ -31,7 +29,7 @@ public class TestRouterHDFSContractAppendSecure
 
   @BeforeClass
   public static void createCluster() throws Exception {
-    RouterHDFSContract.createCluster(initSecurity());
+    RouterHDFSContract.createCluster(true);
   }
 
   @AfterClass
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractConcatSecure.java
 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractConcatSecure.java
index c9a0cc8..d45f639 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractConcatSecure.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractConcatSecure.java
@@ -23,9 +23,6 @@ import org.junit.BeforeClass;
 
 import java.io.IOException;
 
-import static 
org.apache.hadoop.fs.contract.router.SecurityConfUtil.initSecurity;
-
-
 /**
  * Test secure concat operations on the Router-based FS.
  */
@@ -34,7 +31,7 @@ public class TestRouterHDFSContractConcatSecure
 
   @BeforeClass
   public static void createCluster() throws Exception {
-    RouterHDFSContract.createCluster(initSecurity());
+    RouterHDFSContract.createCluster(true);
     // perform a simple operation on the cluster to verify it is up
     RouterHDFSContract.getFileSystem().getDefaultBlockSize(new Path("/"));
   }
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractCreateSecure.java
 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractCreateSecure.java
index dc264b0..9327c1b 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractCreateSecure.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractCreateSecure.java
@@ -22,9 +22,6 @@ import org.junit.BeforeClass;
 
 import java.io.IOException;
 
-import static 
org.apache.hadoop.fs.contract.router.SecurityConfUtil.initSecurity;
-
-
 /**
  * Test secure create operations on the Router-based FS.
  */
@@ -33,7 +30,7 @@ public class TestRouterHDFSContractCreateSecure
 
   @BeforeClass
   public static void createCluster() throws Exception {
-    RouterHDFSContract.createCluster(initSecurity());
+    RouterHDFSContract.createCluster(true);
   }
 
   @AfterClass
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractDelegationToken.java
 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractDelegationToken.java
index f22489e..77cb602 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractDelegationToken.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractDelegationToken.java
@@ -46,7 +46,7 @@ public class TestRouterHDFSContractDelegationToken
 
   @BeforeClass
   public static void createCluster() throws Exception {
-    RouterHDFSContract.createCluster(false, 1, initSecurity());
+    RouterHDFSContract.createCluster(false, 1, true);
   }
 
   @AfterClass
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractDeleteSecure.java
 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractDeleteSecure.java
index 57cc138..43af1a7 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractDeleteSecure.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractDeleteSecure.java
@@ -21,8 +21,6 @@ import org.apache.hadoop.fs.contract.AbstractFSContract;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 
-import static 
org.apache.hadoop.fs.contract.router.SecurityConfUtil.initSecurity;
-
 /**
  * Test secure delete operations on the Router-based FS.
  */
@@ -31,7 +29,7 @@ public class TestRouterHDFSContractDeleteSecure
 
   @BeforeClass
   public static void createCluster() throws Exception {
-    RouterHDFSContract.createCluster(initSecurity());
+    RouterHDFSContract.createCluster(true);
   }
 
   @AfterClass
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractGetFileStatusSecure.java
 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractGetFileStatusSecure.java
index 13e4e96..5643cfa 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractGetFileStatusSecure.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractGetFileStatusSecure.java
@@ -21,9 +21,6 @@ import org.apache.hadoop.fs.contract.AbstractFSContract;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 
-import static 
org.apache.hadoop.fs.contract.router.SecurityConfUtil.initSecurity;
-
-
 /**
  * Test secure get file status operations on the Router-based FS.
  */
@@ -32,7 +29,7 @@ public class TestRouterHDFSContractGetFileStatusSecure
 
   @BeforeClass
   public static void createCluster() throws Exception {
-    RouterHDFSContract.createCluster(initSecurity());
+    RouterHDFSContract.createCluster(true);
   }
 
   @AfterClass
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractMkdirSecure.java
 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractMkdirSecure.java
index 7c223a6..bb1564f 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractMkdirSecure.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractMkdirSecure.java
@@ -22,9 +22,6 @@ import org.junit.BeforeClass;
 
 import java.io.IOException;
 
-import static 
org.apache.hadoop.fs.contract.router.SecurityConfUtil.initSecurity;
-
-
 /**
  * Test secure dir operations on the Router-based FS.
  */
@@ -33,7 +30,7 @@ public class TestRouterHDFSContractMkdirSecure
 
   @BeforeClass
   public static void createCluster() throws Exception {
-    RouterHDFSContract.createCluster(initSecurity());
+    RouterHDFSContract.createCluster(true);
   }
 
   @AfterClass
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractOpenSecure.java
 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractOpenSecure.java
index 434402c..91749fd 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractOpenSecure.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractOpenSecure.java
@@ -22,9 +22,6 @@ import org.junit.BeforeClass;
 
 import java.io.IOException;
 
-import static 
org.apache.hadoop.fs.contract.router.SecurityConfUtil.initSecurity;
-
-
 /**
  * Test secure open operations on the Router-based FS.
  */
@@ -32,7 +29,7 @@ public class TestRouterHDFSContractOpenSecure extends 
AbstractContractOpenTest {
 
   @BeforeClass
   public static void createCluster() throws Exception {
-    RouterHDFSContract.createCluster(initSecurity());
+    RouterHDFSContract.createCluster(true);
   }
 
   @AfterClass
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractRenameSecure.java
 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractRenameSecure.java
index 29d7398..3de39fd 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractRenameSecure.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractRenameSecure.java
@@ -22,9 +22,6 @@ import org.junit.BeforeClass;
 
 import java.io.IOException;
 
-import static 
org.apache.hadoop.fs.contract.router.SecurityConfUtil.initSecurity;
-
-
 /**
  * Test secure rename operations on the Router-based FS.
  */
@@ -33,7 +30,7 @@ public class TestRouterHDFSContractRenameSecure
 
   @BeforeClass
   public static void createCluster() throws Exception {
-    RouterHDFSContract.createCluster(initSecurity());
+    RouterHDFSContract.createCluster(true);
   }
 
   @AfterClass
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractRootDirectorySecure.java
 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractRootDirectorySecure.java
index faa08ba..f7fb59c 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractRootDirectorySecure.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractRootDirectorySecure.java
@@ -22,9 +22,6 @@ import org.junit.BeforeClass;
 
 import java.io.IOException;
 
-import static 
org.apache.hadoop.fs.contract.router.SecurityConfUtil.initSecurity;
-
-
 /**
  * Test secure root dir operations on the Router-based FS.
  */
@@ -33,7 +30,7 @@ public class TestRouterHDFSContractRootDirectorySecure
 
   @BeforeClass
   public static void createCluster() throws Exception {
-    RouterHDFSContract.createCluster(initSecurity());
+    RouterHDFSContract.createCluster(true);
   }
 
   @AfterClass
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractSeekSecure.java
 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractSeekSecure.java
index f281b47..e318f0e 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractSeekSecure.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractSeekSecure.java
@@ -22,9 +22,6 @@ import org.junit.BeforeClass;
 
 import java.io.IOException;
 
-import static 
org.apache.hadoop.fs.contract.router.SecurityConfUtil.initSecurity;
-
-
 /**
  * Test secure seek operations on the Router-based FS.
  */
@@ -32,7 +29,7 @@ public class TestRouterHDFSContractSeekSecure extends 
AbstractContractSeekTest {
 
   @BeforeClass
   public static void createCluster() throws Exception {
-    RouterHDFSContract.createCluster(initSecurity());
+    RouterHDFSContract.createCluster(true);
   }
 
   @AfterClass
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractSetTimesSecure.java
 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractSetTimesSecure.java
index 8f86b95..69123f6 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractSetTimesSecure.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/fs/contract/router/TestRouterHDFSContractSetTimesSecure.java
@@ -22,9 +22,6 @@ import org.junit.BeforeClass;
 
 import java.io.IOException;
 
-import static 
org.apache.hadoop.fs.contract.router.SecurityConfUtil.initSecurity;
-
-
 /**
  * Test secure set times operations on the Router-based FS.
  */
@@ -33,7 +30,7 @@ public class TestRouterHDFSContractSetTimesSecure
 
   @BeforeClass
   public static void createCluster() throws Exception {
-    RouterHDFSContract.createCluster(initSecurity());
+    RouterHDFSContract.createCluster(true);
   }
 
   @AfterClass
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/hdfs/server/federation/security/TestRouterHttpDelegationToken.java
 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/hdfs/server/federation/security/TestRouterHttpDelegationToken.java
index b5f6849..7a1859c 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/hdfs/server/federation/security/TestRouterHttpDelegationToken.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/hdfs/server/federation/security/TestRouterHttpDelegationToken.java
@@ -144,6 +144,7 @@ public class TestRouterHttpDelegationToken {
       router.stop();
       router.close();
     }
+    SecurityConfUtil.destroy();
   }
 
   @Test


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

Reply via email to