HDFS-8915. TestFSNamesystem.testFSLockGetWaiterCount fails intermittently. Contributed by Masatake Iwasaki.
(cherry picked from commit 13fb1b50e6
)
This commit is contained in:
parent
026027166e
commit
2a6497cc7c
|
@ -30,6 +30,7 @@ import java.net.InetAddress;
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
|
||||||
|
import com.google.common.base.Supplier;
|
||||||
import org.apache.hadoop.conf.Configuration;
|
import org.apache.hadoop.conf.Configuration;
|
||||||
import org.apache.hadoop.fs.FileStatus;
|
import org.apache.hadoop.fs.FileStatus;
|
||||||
import org.apache.hadoop.fs.FileUtil;
|
import org.apache.hadoop.fs.FileUtil;
|
||||||
|
@ -56,6 +57,7 @@ import java.util.List;
|
||||||
import java.util.concurrent.CountDownLatch;
|
import java.util.concurrent.CountDownLatch;
|
||||||
import java.util.concurrent.ExecutorService;
|
import java.util.concurrent.ExecutorService;
|
||||||
import java.util.concurrent.Executors;
|
import java.util.concurrent.Executors;
|
||||||
|
import java.util.concurrent.TimeoutException;
|
||||||
|
|
||||||
public class TestFSNamesystem {
|
public class TestFSNamesystem {
|
||||||
|
|
||||||
|
@ -271,9 +273,16 @@ public class TestFSNamesystem {
|
||||||
}
|
}
|
||||||
|
|
||||||
latch.await();
|
latch.await();
|
||||||
Thread.sleep(10); // Lets all threads get BLOCKED
|
try {
|
||||||
Assert.assertEquals("Expected number of blocked thread not found",
|
GenericTestUtils.waitFor(new Supplier<Boolean>() {
|
||||||
threadCount, rwLock.getQueueLength());
|
@Override
|
||||||
|
public Boolean get() {
|
||||||
|
return (threadCount == rwLock.getQueueLength());
|
||||||
|
}
|
||||||
|
}, 10, 1000);
|
||||||
|
} catch (TimeoutException e) {
|
||||||
|
fail("Expected number of blocked thread not found");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue