From 5459dd64fdb806be065ac53558e1e4828b3877b7 Mon Sep 17 00:00:00 2001 From: Akira Ajisaka Date: Tue, 21 Apr 2020 00:41:18 +0900 Subject: [PATCH] HDFS-14742. RBF: TestRouterFaultTolerant tests are flaky (cherry picked from commit e069a0613710926905de991d1d563cea5b4ee6df) --- .../hadoop/hdfs/server/federation/FederationTestUtils.java | 5 ++++- .../server/federation/router/TestRouterFaultTolerant.java | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/hdfs/server/federation/FederationTestUtils.java b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/hdfs/server/federation/FederationTestUtils.java index 31c1bffe1e..5bd5178235 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/hdfs/server/federation/FederationTestUtils.java +++ b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/hdfs/server/federation/FederationTestUtils.java @@ -474,7 +474,10 @@ public final class FederationTestUtils { /** * Add a mount table entry in some name services and wait until it is - * available. + * available. If there are multiple routers, + * {@link #createMountTableEntry(List, String, DestinationOrder, Collection)} + * should be used instead because the method does not refresh + * the mount tables of the other routers. * @param router Router to change. * @param mountPoint Name of the mount point. * @param order Order of the mount table entry. diff --git a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/hdfs/server/federation/router/TestRouterFaultTolerant.java b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/hdfs/server/federation/router/TestRouterFaultTolerant.java index 5e0e117523..bf571e2ff7 100644 --- a/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/hdfs/server/federation/router/TestRouterFaultTolerant.java +++ b/hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/hdfs/server/federation/router/TestRouterFaultTolerant.java @@ -248,6 +248,7 @@ public class TestRouterFaultTolerant { LOG.info("Setup {} with order {}", mountPoint, order); createMountTableEntry( getRandomRouter(), mountPoint, order, namenodes.keySet()); + refreshRoutersCaches(routers); LOG.info("Write in {} should succeed writing in ns0 and fail for ns1", mountPath);