YARN-5389. TestYarnClient#testReservationDelete fails. Contributed by Sean Po

(cherry picked from commit 3d86110a5c)
This commit is contained in:
Jason Lowe 2016-08-25 14:42:06 +00:00
parent 952c309dd9
commit 782aeabcd5
1 changed files with 19 additions and 24 deletions

View File

@ -41,6 +41,7 @@
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import com.google.common.base.Supplier;
import org.apache.commons.io.IOUtils; import org.apache.commons.io.IOUtils;
import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.io.DataInputByteBuffer; import org.apache.hadoop.io.DataInputByteBuffer;
@ -52,6 +53,7 @@
import org.apache.hadoop.security.UserGroupInformation.AuthenticationMethod; import org.apache.hadoop.security.UserGroupInformation.AuthenticationMethod;
import org.apache.hadoop.security.token.Token; import org.apache.hadoop.security.token.Token;
import org.apache.hadoop.security.token.TokenIdentifier; import org.apache.hadoop.security.token.TokenIdentifier;
import org.apache.hadoop.test.GenericTestUtils;
import org.apache.hadoop.yarn.api.ApplicationClientProtocol; import org.apache.hadoop.yarn.api.ApplicationClientProtocol;
import org.apache.hadoop.yarn.api.protocolrecords.GetApplicationAttemptReportRequest; import org.apache.hadoop.yarn.api.protocolrecords.GetApplicationAttemptReportRequest;
import org.apache.hadoop.yarn.api.protocolrecords.GetApplicationAttemptReportResponse; import org.apache.hadoop.yarn.api.protocolrecords.GetApplicationAttemptReportResponse;
@ -1193,7 +1195,7 @@ public void testParseTimelineDelegationTokenRenewer() throws Exception {
} }
} }
private MiniYARNCluster setupMiniYARNCluster() { private MiniYARNCluster setupMiniYARNCluster() throws Exception {
CapacitySchedulerConfiguration conf = new CapacitySchedulerConfiguration(); CapacitySchedulerConfiguration conf = new CapacitySchedulerConfiguration();
ReservationSystemTestUtil.setupQueueConfiguration(conf); ReservationSystemTestUtil.setupQueueConfiguration(conf);
conf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class, conf.setClass(YarnConfiguration.RM_SCHEDULER, CapacityScheduler.class,
@ -1205,23 +1207,15 @@ private MiniYARNCluster setupMiniYARNCluster() {
cluster.init(conf); cluster.init(conf);
cluster.start(); cluster.start();
int attempts; GenericTestUtils.waitFor(new Supplier<Boolean>() {
for (attempts = 10; attempts > 0; attempts--) { @Override
if (cluster.getResourceManager().getRMContext().getReservationSystem() public Boolean get() {
.getPlan(ReservationSystemTestUtil.reservationQ).getTotalCapacity() return cluster.getResourceManager().getRMContext()
.getMemorySize() > 6000) { .getReservationSystem()
break; .getPlan(ReservationSystemTestUtil.reservationQ)
} .getTotalCapacity().getMemorySize() > 6000;
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
if (attempts <= 0) {
Assert.fail("Exhausted attempts in checking if node capacity was "
+ "added to the plan");
} }
}, 10, 10000);
return cluster; return cluster;
} }
@ -1253,7 +1247,7 @@ private ReservationSubmissionRequest submitReservationTestHelper(
} }
@Test @Test
public void testCreateReservation() { public void testCreateReservation() throws Exception {
MiniYARNCluster cluster = setupMiniYARNCluster(); MiniYARNCluster cluster = setupMiniYARNCluster();
YarnClient client = setupYarnClient(cluster); YarnClient client = setupYarnClient(cluster);
try { try {
@ -1296,7 +1290,7 @@ public void testCreateReservation() {
} }
@Test @Test
public void testUpdateReservation() { public void testUpdateReservation() throws Exception {
MiniYARNCluster cluster = setupMiniYARNCluster(); MiniYARNCluster cluster = setupMiniYARNCluster();
YarnClient client = setupYarnClient(cluster); YarnClient client = setupYarnClient(cluster);
try { try {
@ -1338,7 +1332,7 @@ public void testUpdateReservation() {
} }
@Test @Test
public void testListReservationsByReservationId() { public void testListReservationsByReservationId() throws Exception{
MiniYARNCluster cluster = setupMiniYARNCluster(); MiniYARNCluster cluster = setupMiniYARNCluster();
YarnClient client = setupYarnClient(cluster); YarnClient client = setupYarnClient(cluster);
try { try {
@ -1375,7 +1369,7 @@ public void testListReservationsByReservationId() {
} }
@Test @Test
public void testListReservationsByTimeInterval() { public void testListReservationsByTimeInterval() throws Exception {
MiniYARNCluster cluster = setupMiniYARNCluster(); MiniYARNCluster cluster = setupMiniYARNCluster();
YarnClient client = setupYarnClient(cluster); YarnClient client = setupYarnClient(cluster);
try { try {
@ -1440,7 +1434,7 @@ public void testListReservationsByTimeInterval() {
} }
@Test @Test
public void testListReservationsByInvalidTimeInterval() { public void testListReservationsByInvalidTimeInterval() throws Exception {
MiniYARNCluster cluster = setupMiniYARNCluster(); MiniYARNCluster cluster = setupMiniYARNCluster();
YarnClient client = setupYarnClient(cluster); YarnClient client = setupYarnClient(cluster);
try { try {
@ -1490,7 +1484,8 @@ public void testListReservationsByInvalidTimeInterval() {
} }
@Test @Test
public void testListReservationsByTimeIntervalContainingNoReservations() { public void testListReservationsByTimeIntervalContainingNoReservations()
throws Exception {
MiniYARNCluster cluster = setupMiniYARNCluster(); MiniYARNCluster cluster = setupMiniYARNCluster();
YarnClient client = setupYarnClient(cluster); YarnClient client = setupYarnClient(cluster);
try { try {
@ -1580,7 +1575,7 @@ public void testListReservationsByTimeIntervalContainingNoReservations() {
} }
@Test @Test
public void testReservationDelete() { public void testReservationDelete() throws Exception {
MiniYARNCluster cluster = setupMiniYARNCluster(); MiniYARNCluster cluster = setupMiniYARNCluster();
YarnClient client = setupYarnClient(cluster); YarnClient client = setupYarnClient(cluster);
try { try {