YARN-485. TestProcfsProcessTree#testProcessTree() doesn't wait long enough for the process to die. (kkambatl via tucu)
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1457938 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
1036f637cc
commit
d311bf9c24
|
@ -52,6 +52,9 @@ Release 2.0.5-beta - UNRELEASED
|
||||||
YARN-196. Nodemanager should be more robust in handling connection failure
|
YARN-196. Nodemanager should be more robust in handling connection failure
|
||||||
to ResourceManager when a cluster is started (Xuan Gong via hitesh)
|
to ResourceManager when a cluster is started (Xuan Gong via hitesh)
|
||||||
|
|
||||||
|
YARN-485. TestProcfsProcessTree#testProcessTree() doesn't wait long enough
|
||||||
|
for the process to die. (kkambatl via tucu)
|
||||||
|
|
||||||
Release 2.0.4-alpha - UNRELEASED
|
Release 2.0.4-alpha - UNRELEASED
|
||||||
|
|
||||||
INCOMPATIBLE CHANGES
|
INCOMPATIBLE CHANGES
|
||||||
|
|
|
@ -18,6 +18,8 @@
|
||||||
|
|
||||||
package org.apache.hadoop.yarn.util;
|
package org.apache.hadoop.yarn.util;
|
||||||
|
|
||||||
|
import static org.junit.Assert.fail;
|
||||||
|
|
||||||
import java.io.BufferedReader;
|
import java.io.BufferedReader;
|
||||||
import java.io.BufferedWriter;
|
import java.io.BufferedWriter;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
@ -183,11 +185,20 @@ public class TestProcfsBasedProcessTree {
|
||||||
// destroy the process and all its subprocesses
|
// destroy the process and all its subprocesses
|
||||||
destroyProcessTree(pid);
|
destroyProcessTree(pid);
|
||||||
|
|
||||||
if (isSetsidAvailable()) { // whole processtree should be gone
|
boolean isAlive = true;
|
||||||
Assert.assertFalse("Proceesses in process group live",
|
for (int tries = 100; tries > 0; tries--) {
|
||||||
isAnyProcessInTreeAlive(p));
|
if (isSetsidAvailable()) {// whole processtree
|
||||||
} else {// process should be gone
|
isAlive = isAnyProcessInTreeAlive(p);
|
||||||
Assert.assertFalse("ProcessTree must have been gone", isAlive(pid));
|
} else {// process
|
||||||
|
isAlive = isAlive(pid);
|
||||||
|
}
|
||||||
|
if (!isAlive) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
Thread.sleep(100);
|
||||||
|
}
|
||||||
|
if (isAlive) {
|
||||||
|
fail("ProcessTree shouldn't be alive");
|
||||||
}
|
}
|
||||||
|
|
||||||
LOG.info("Process-tree dump follows: \n" + processTreeDump);
|
LOG.info("Process-tree dump follows: \n" + processTreeDump);
|
||||||
|
|
Loading…
Reference in New Issue