|
@@ -19,6 +19,7 @@
|
|
package org.apache.hadoop.yarn.server;
|
|
package org.apache.hadoop.yarn.server;
|
|
|
|
|
|
import java.io.IOException;
|
|
import java.io.IOException;
|
|
|
|
+import java.net.ConnectException;
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
import java.util.HashMap;
|
|
import java.util.HashMap;
|
|
import java.util.HashSet;
|
|
import java.util.HashSet;
|
|
@@ -118,6 +119,7 @@ import org.apache.hadoop.yarn.api.records.UpdatedContainer;
|
|
import org.apache.hadoop.yarn.api.records.YarnApplicationAttemptState;
|
|
import org.apache.hadoop.yarn.api.records.YarnApplicationAttemptState;
|
|
import org.apache.hadoop.yarn.api.records.YarnApplicationState;
|
|
import org.apache.hadoop.yarn.api.records.YarnApplicationState;
|
|
import org.apache.hadoop.yarn.exceptions.ApplicationMasterNotRegisteredException;
|
|
import org.apache.hadoop.yarn.exceptions.ApplicationMasterNotRegisteredException;
|
|
|
|
+import org.apache.hadoop.yarn.exceptions.ApplicationNotFoundException;
|
|
import org.apache.hadoop.yarn.exceptions.InvalidApplicationMasterRequestException;
|
|
import org.apache.hadoop.yarn.exceptions.InvalidApplicationMasterRequestException;
|
|
import org.apache.hadoop.yarn.exceptions.YarnException;
|
|
import org.apache.hadoop.yarn.exceptions.YarnException;
|
|
import org.apache.hadoop.yarn.security.AMRMTokenIdentifier;
|
|
import org.apache.hadoop.yarn.security.AMRMTokenIdentifier;
|
|
@@ -153,6 +155,7 @@ import org.apache.hadoop.yarn.util.Records;
|
|
import org.junit.Assert;
|
|
import org.junit.Assert;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
+
|
|
import com.google.common.base.Strings;
|
|
import com.google.common.base.Strings;
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -174,6 +177,13 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
new HashMap<ContainerId, Container>();
|
|
new HashMap<ContainerId, Container>();
|
|
private AtomicInteger containerIndex = new AtomicInteger(0);
|
|
private AtomicInteger containerIndex = new AtomicInteger(0);
|
|
private Configuration conf;
|
|
private Configuration conf;
|
|
|
|
+ private int subClusterId;
|
|
|
|
+ final private AtomicInteger applicationCounter = new AtomicInteger(0);
|
|
|
|
+
|
|
|
|
+ // True if the Mock RM is running, false otherwise.
|
|
|
|
+ // This property allows us to write tests for specific scenario as Yarn RM
|
|
|
|
+ // down e.g. network issue, failover.
|
|
|
|
+ private boolean isRunning;
|
|
|
|
|
|
private boolean shouldReRegisterNext = false;
|
|
private boolean shouldReRegisterNext = false;
|
|
|
|
|
|
@@ -186,14 +196,25 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
|
|
|
|
public MockResourceManagerFacade(Configuration conf,
|
|
public MockResourceManagerFacade(Configuration conf,
|
|
int startContainerIndex) {
|
|
int startContainerIndex) {
|
|
|
|
+ this(conf, startContainerIndex, 0, true);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public MockResourceManagerFacade(Configuration conf, int startContainerIndex,
|
|
|
|
+ int subClusterId, boolean isRunning) {
|
|
this.conf = conf;
|
|
this.conf = conf;
|
|
this.containerIndex.set(startContainerIndex);
|
|
this.containerIndex.set(startContainerIndex);
|
|
|
|
+ this.subClusterId = subClusterId;
|
|
|
|
+ this.isRunning = isRunning;
|
|
}
|
|
}
|
|
|
|
|
|
public void setShouldReRegisterNext() {
|
|
public void setShouldReRegisterNext() {
|
|
shouldReRegisterNext = true;
|
|
shouldReRegisterNext = true;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ public void setRunningMode(boolean mode) {
|
|
|
|
+ this.isRunning = mode;
|
|
|
|
+ }
|
|
|
|
+
|
|
private static String getAppIdentifier() throws IOException {
|
|
private static String getAppIdentifier() throws IOException {
|
|
AMRMTokenIdentifier result = null;
|
|
AMRMTokenIdentifier result = null;
|
|
UserGroupInformation remoteUgi = UserGroupInformation.getCurrentUser();
|
|
UserGroupInformation remoteUgi = UserGroupInformation.getCurrentUser();
|
|
@@ -207,10 +228,19 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
return result != null ? result.getApplicationAttemptId().toString() : "";
|
|
return result != null ? result.getApplicationAttemptId().toString() : "";
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ private void validateRunning() throws ConnectException {
|
|
|
|
+ if (!isRunning) {
|
|
|
|
+ throw new ConnectException("RM is stopped");
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
public RegisterApplicationMasterResponse registerApplicationMaster(
|
|
public RegisterApplicationMasterResponse registerApplicationMaster(
|
|
RegisterApplicationMasterRequest request)
|
|
RegisterApplicationMasterRequest request)
|
|
throws YarnException, IOException {
|
|
throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
String amrmToken = getAppIdentifier();
|
|
String amrmToken = getAppIdentifier();
|
|
LOG.info("Registering application attempt: " + amrmToken);
|
|
LOG.info("Registering application attempt: " + amrmToken);
|
|
|
|
|
|
@@ -247,6 +277,9 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
public FinishApplicationMasterResponse finishApplicationMaster(
|
|
public FinishApplicationMasterResponse finishApplicationMaster(
|
|
FinishApplicationMasterRequest request)
|
|
FinishApplicationMasterRequest request)
|
|
throws YarnException, IOException {
|
|
throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
String amrmToken = getAppIdentifier();
|
|
String amrmToken = getAppIdentifier();
|
|
LOG.info("Finishing application attempt: " + amrmToken);
|
|
LOG.info("Finishing application attempt: " + amrmToken);
|
|
|
|
|
|
@@ -283,6 +316,9 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
@Override
|
|
@Override
|
|
public AllocateResponse allocate(AllocateRequest request)
|
|
public AllocateResponse allocate(AllocateRequest request)
|
|
throws YarnException, IOException {
|
|
throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
if (request.getAskList() != null && request.getAskList().size() > 0
|
|
if (request.getAskList() != null && request.getAskList().size() > 0
|
|
&& request.getReleaseList() != null
|
|
&& request.getReleaseList() != null
|
|
&& request.getReleaseList().size() > 0) {
|
|
&& request.getReleaseList().size() > 0) {
|
|
@@ -390,6 +426,8 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
public GetApplicationReportResponse getApplicationReport(
|
|
public GetApplicationReportResponse getApplicationReport(
|
|
GetApplicationReportRequest request) throws YarnException, IOException {
|
|
GetApplicationReportRequest request) throws YarnException, IOException {
|
|
|
|
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
GetApplicationReportResponse response =
|
|
GetApplicationReportResponse response =
|
|
Records.newRecord(GetApplicationReportResponse.class);
|
|
Records.newRecord(GetApplicationReportResponse.class);
|
|
ApplicationReport report = Records.newRecord(ApplicationReport.class);
|
|
ApplicationReport report = Records.newRecord(ApplicationReport.class);
|
|
@@ -406,6 +444,8 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
GetApplicationAttemptReportRequest request)
|
|
GetApplicationAttemptReportRequest request)
|
|
throws YarnException, IOException {
|
|
throws YarnException, IOException {
|
|
|
|
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
GetApplicationAttemptReportResponse response =
|
|
GetApplicationAttemptReportResponse response =
|
|
Records.newRecord(GetApplicationAttemptReportResponse.class);
|
|
Records.newRecord(GetApplicationAttemptReportResponse.class);
|
|
ApplicationAttemptReport report =
|
|
ApplicationAttemptReport report =
|
|
@@ -419,12 +459,19 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
@Override
|
|
@Override
|
|
public GetNewApplicationResponse getNewApplication(
|
|
public GetNewApplicationResponse getNewApplication(
|
|
GetNewApplicationRequest request) throws YarnException, IOException {
|
|
GetNewApplicationRequest request) throws YarnException, IOException {
|
|
- return GetNewApplicationResponse.newInstance(null, null, null);
|
|
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
|
|
+ return GetNewApplicationResponse.newInstance(ApplicationId.newInstance(
|
|
|
|
+ subClusterId, applicationCounter.incrementAndGet()), null, null);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public SubmitApplicationResponse submitApplication(
|
|
public SubmitApplicationResponse submitApplication(
|
|
SubmitApplicationRequest request) throws YarnException, IOException {
|
|
SubmitApplicationRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
ApplicationId appId = null;
|
|
ApplicationId appId = null;
|
|
if (request.getApplicationSubmissionContext() != null) {
|
|
if (request.getApplicationSubmissionContext() != null) {
|
|
appId = request.getApplicationSubmissionContext().getApplicationId();
|
|
appId = request.getApplicationSubmissionContext().getApplicationId();
|
|
@@ -437,32 +484,17 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
@Override
|
|
@Override
|
|
public KillApplicationResponse forceKillApplication(
|
|
public KillApplicationResponse forceKillApplication(
|
|
KillApplicationRequest request) throws YarnException, IOException {
|
|
KillApplicationRequest request) throws YarnException, IOException {
|
|
- String appId = "";
|
|
|
|
- boolean foundApp = false;
|
|
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
|
|
+ ApplicationId appId = null;
|
|
if (request.getApplicationId() != null) {
|
|
if (request.getApplicationId() != null) {
|
|
- appId = request.getApplicationId().toString();
|
|
|
|
- synchronized (applicationContainerIdMap) {
|
|
|
|
- for (Entry<String, List<ContainerId>> entry : applicationContainerIdMap
|
|
|
|
- .entrySet()) {
|
|
|
|
- ApplicationAttemptId attemptId =
|
|
|
|
- ApplicationAttemptId.fromString(entry.getKey());
|
|
|
|
- if (attemptId.getApplicationId().equals(request.getApplicationId())) {
|
|
|
|
- // Remove the apptempt and the containers that were being tracked
|
|
|
|
- List<ContainerId> ids =
|
|
|
|
- applicationContainerIdMap.remove(entry.getKey());
|
|
|
|
- if (ids != null) {
|
|
|
|
- for (ContainerId c : ids) {
|
|
|
|
- allocatedContainerMap.remove(c);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- foundApp = true;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ appId = request.getApplicationId();
|
|
|
|
+ if (!applicationMap.remove(appId)) {
|
|
|
|
+ throw new ApplicationNotFoundException(
|
|
|
|
+ "Trying to kill an absent application: " + appId);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if (!foundApp) {
|
|
|
|
- throw new YarnException("The application id is NOT registered: " + appId);
|
|
|
|
- }
|
|
|
|
LOG.info("Force killing application: " + appId);
|
|
LOG.info("Force killing application: " + appId);
|
|
return KillApplicationResponse.newInstance(true);
|
|
return KillApplicationResponse.newInstance(true);
|
|
}
|
|
}
|
|
@@ -470,48 +502,72 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
@Override
|
|
@Override
|
|
public GetClusterMetricsResponse getClusterMetrics(
|
|
public GetClusterMetricsResponse getClusterMetrics(
|
|
GetClusterMetricsRequest request) throws YarnException, IOException {
|
|
GetClusterMetricsRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return GetClusterMetricsResponse.newInstance(null);
|
|
return GetClusterMetricsResponse.newInstance(null);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public GetApplicationsResponse getApplications(GetApplicationsRequest request)
|
|
public GetApplicationsResponse getApplications(GetApplicationsRequest request)
|
|
throws YarnException, IOException {
|
|
throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return GetApplicationsResponse.newInstance(null);
|
|
return GetApplicationsResponse.newInstance(null);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public GetClusterNodesResponse getClusterNodes(GetClusterNodesRequest request)
|
|
public GetClusterNodesResponse getClusterNodes(GetClusterNodesRequest request)
|
|
throws YarnException, IOException {
|
|
throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return GetClusterNodesResponse.newInstance(null);
|
|
return GetClusterNodesResponse.newInstance(null);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public GetQueueInfoResponse getQueueInfo(GetQueueInfoRequest request)
|
|
public GetQueueInfoResponse getQueueInfo(GetQueueInfoRequest request)
|
|
throws YarnException, IOException {
|
|
throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return GetQueueInfoResponse.newInstance(null);
|
|
return GetQueueInfoResponse.newInstance(null);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public GetQueueUserAclsInfoResponse getQueueUserAcls(
|
|
public GetQueueUserAclsInfoResponse getQueueUserAcls(
|
|
GetQueueUserAclsInfoRequest request) throws YarnException, IOException {
|
|
GetQueueUserAclsInfoRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return GetQueueUserAclsInfoResponse.newInstance(null);
|
|
return GetQueueUserAclsInfoResponse.newInstance(null);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public GetDelegationTokenResponse getDelegationToken(
|
|
public GetDelegationTokenResponse getDelegationToken(
|
|
GetDelegationTokenRequest request) throws YarnException, IOException {
|
|
GetDelegationTokenRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return GetDelegationTokenResponse.newInstance(null);
|
|
return GetDelegationTokenResponse.newInstance(null);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public RenewDelegationTokenResponse renewDelegationToken(
|
|
public RenewDelegationTokenResponse renewDelegationToken(
|
|
RenewDelegationTokenRequest request) throws YarnException, IOException {
|
|
RenewDelegationTokenRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return RenewDelegationTokenResponse.newInstance(0);
|
|
return RenewDelegationTokenResponse.newInstance(0);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public CancelDelegationTokenResponse cancelDelegationToken(
|
|
public CancelDelegationTokenResponse cancelDelegationToken(
|
|
CancelDelegationTokenRequest request) throws YarnException, IOException {
|
|
CancelDelegationTokenRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return CancelDelegationTokenResponse.newInstance();
|
|
return CancelDelegationTokenResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@@ -519,36 +575,54 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
public MoveApplicationAcrossQueuesResponse moveApplicationAcrossQueues(
|
|
public MoveApplicationAcrossQueuesResponse moveApplicationAcrossQueues(
|
|
MoveApplicationAcrossQueuesRequest request)
|
|
MoveApplicationAcrossQueuesRequest request)
|
|
throws YarnException, IOException {
|
|
throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return MoveApplicationAcrossQueuesResponse.newInstance();
|
|
return MoveApplicationAcrossQueuesResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public GetApplicationAttemptsResponse getApplicationAttempts(
|
|
public GetApplicationAttemptsResponse getApplicationAttempts(
|
|
GetApplicationAttemptsRequest request) throws YarnException, IOException {
|
|
GetApplicationAttemptsRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return GetApplicationAttemptsResponse.newInstance(null);
|
|
return GetApplicationAttemptsResponse.newInstance(null);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public GetContainerReportResponse getContainerReport(
|
|
public GetContainerReportResponse getContainerReport(
|
|
GetContainerReportRequest request) throws YarnException, IOException {
|
|
GetContainerReportRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return GetContainerReportResponse.newInstance(null);
|
|
return GetContainerReportResponse.newInstance(null);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public GetContainersResponse getContainers(GetContainersRequest request)
|
|
public GetContainersResponse getContainers(GetContainersRequest request)
|
|
throws YarnException, IOException {
|
|
throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return GetContainersResponse.newInstance(null);
|
|
return GetContainersResponse.newInstance(null);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public ReservationSubmissionResponse submitReservation(
|
|
public ReservationSubmissionResponse submitReservation(
|
|
ReservationSubmissionRequest request) throws YarnException, IOException {
|
|
ReservationSubmissionRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return ReservationSubmissionResponse.newInstance();
|
|
return ReservationSubmissionResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public ReservationListResponse listReservations(
|
|
public ReservationListResponse listReservations(
|
|
ReservationListRequest request) throws YarnException, IOException {
|
|
ReservationListRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return ReservationListResponse
|
|
return ReservationListResponse
|
|
.newInstance(new ArrayList<ReservationAllocationState>());
|
|
.newInstance(new ArrayList<ReservationAllocationState>());
|
|
}
|
|
}
|
|
@@ -556,18 +630,27 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
@Override
|
|
@Override
|
|
public ReservationUpdateResponse updateReservation(
|
|
public ReservationUpdateResponse updateReservation(
|
|
ReservationUpdateRequest request) throws YarnException, IOException {
|
|
ReservationUpdateRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return ReservationUpdateResponse.newInstance();
|
|
return ReservationUpdateResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public ReservationDeleteResponse deleteReservation(
|
|
public ReservationDeleteResponse deleteReservation(
|
|
ReservationDeleteRequest request) throws YarnException, IOException {
|
|
ReservationDeleteRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return ReservationDeleteResponse.newInstance();
|
|
return ReservationDeleteResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public GetNodesToLabelsResponse getNodeToLabels(
|
|
public GetNodesToLabelsResponse getNodeToLabels(
|
|
GetNodesToLabelsRequest request) throws YarnException, IOException {
|
|
GetNodesToLabelsRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return GetNodesToLabelsResponse
|
|
return GetNodesToLabelsResponse
|
|
.newInstance(new HashMap<NodeId, Set<String>>());
|
|
.newInstance(new HashMap<NodeId, Set<String>>());
|
|
}
|
|
}
|
|
@@ -575,18 +658,27 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
@Override
|
|
@Override
|
|
public GetClusterNodeLabelsResponse getClusterNodeLabels(
|
|
public GetClusterNodeLabelsResponse getClusterNodeLabels(
|
|
GetClusterNodeLabelsRequest request) throws YarnException, IOException {
|
|
GetClusterNodeLabelsRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return GetClusterNodeLabelsResponse.newInstance(new ArrayList<NodeLabel>());
|
|
return GetClusterNodeLabelsResponse.newInstance(new ArrayList<NodeLabel>());
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public GetLabelsToNodesResponse getLabelsToNodes(
|
|
public GetLabelsToNodesResponse getLabelsToNodes(
|
|
GetLabelsToNodesRequest request) throws YarnException, IOException {
|
|
GetLabelsToNodesRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return GetLabelsToNodesResponse.newInstance(null);
|
|
return GetLabelsToNodesResponse.newInstance(null);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public GetNewReservationResponse getNewReservation(
|
|
public GetNewReservationResponse getNewReservation(
|
|
GetNewReservationRequest request) throws YarnException, IOException {
|
|
GetNewReservationRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return GetNewReservationResponse
|
|
return GetNewReservationResponse
|
|
.newInstance(ReservationId.newInstance(0, 0));
|
|
.newInstance(ReservationId.newInstance(0, 0));
|
|
}
|
|
}
|
|
@@ -594,6 +686,9 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
@Override
|
|
@Override
|
|
public FailApplicationAttemptResponse failApplicationAttempt(
|
|
public FailApplicationAttemptResponse failApplicationAttempt(
|
|
FailApplicationAttemptRequest request) throws YarnException, IOException {
|
|
FailApplicationAttemptRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return FailApplicationAttemptResponse.newInstance();
|
|
return FailApplicationAttemptResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@@ -601,12 +696,18 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
public UpdateApplicationPriorityResponse updateApplicationPriority(
|
|
public UpdateApplicationPriorityResponse updateApplicationPriority(
|
|
UpdateApplicationPriorityRequest request)
|
|
UpdateApplicationPriorityRequest request)
|
|
throws YarnException, IOException {
|
|
throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return UpdateApplicationPriorityResponse.newInstance(null);
|
|
return UpdateApplicationPriorityResponse.newInstance(null);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public SignalContainerResponse signalToContainer(
|
|
public SignalContainerResponse signalToContainer(
|
|
SignalContainerRequest request) throws YarnException, IOException {
|
|
SignalContainerRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return new SignalContainerResponsePBImpl();
|
|
return new SignalContainerResponsePBImpl();
|
|
}
|
|
}
|
|
|
|
|
|
@@ -614,18 +715,27 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
public UpdateApplicationTimeoutsResponse updateApplicationTimeouts(
|
|
public UpdateApplicationTimeoutsResponse updateApplicationTimeouts(
|
|
UpdateApplicationTimeoutsRequest request)
|
|
UpdateApplicationTimeoutsRequest request)
|
|
throws YarnException, IOException {
|
|
throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return UpdateApplicationTimeoutsResponse.newInstance();
|
|
return UpdateApplicationTimeoutsResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public RefreshQueuesResponse refreshQueues(RefreshQueuesRequest request)
|
|
public RefreshQueuesResponse refreshQueues(RefreshQueuesRequest request)
|
|
throws StandbyException, YarnException, IOException {
|
|
throws StandbyException, YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return RefreshQueuesResponse.newInstance();
|
|
return RefreshQueuesResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public RefreshNodesResponse refreshNodes(RefreshNodesRequest request)
|
|
public RefreshNodesResponse refreshNodes(RefreshNodesRequest request)
|
|
throws StandbyException, YarnException, IOException {
|
|
throws StandbyException, YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return RefreshNodesResponse.newInstance();
|
|
return RefreshNodesResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@@ -633,6 +743,9 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
public RefreshSuperUserGroupsConfigurationResponse refreshSuperUserGroupsConfiguration(
|
|
public RefreshSuperUserGroupsConfigurationResponse refreshSuperUserGroupsConfiguration(
|
|
RefreshSuperUserGroupsConfigurationRequest request)
|
|
RefreshSuperUserGroupsConfigurationRequest request)
|
|
throws StandbyException, YarnException, IOException {
|
|
throws StandbyException, YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return RefreshSuperUserGroupsConfigurationResponse.newInstance();
|
|
return RefreshSuperUserGroupsConfigurationResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@@ -640,36 +753,54 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
public RefreshUserToGroupsMappingsResponse refreshUserToGroupsMappings(
|
|
public RefreshUserToGroupsMappingsResponse refreshUserToGroupsMappings(
|
|
RefreshUserToGroupsMappingsRequest request)
|
|
RefreshUserToGroupsMappingsRequest request)
|
|
throws StandbyException, YarnException, IOException {
|
|
throws StandbyException, YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return RefreshUserToGroupsMappingsResponse.newInstance();
|
|
return RefreshUserToGroupsMappingsResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public RefreshAdminAclsResponse refreshAdminAcls(
|
|
public RefreshAdminAclsResponse refreshAdminAcls(
|
|
RefreshAdminAclsRequest request) throws YarnException, IOException {
|
|
RefreshAdminAclsRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return RefreshAdminAclsResponse.newInstance();
|
|
return RefreshAdminAclsResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public RefreshServiceAclsResponse refreshServiceAcls(
|
|
public RefreshServiceAclsResponse refreshServiceAcls(
|
|
RefreshServiceAclsRequest request) throws YarnException, IOException {
|
|
RefreshServiceAclsRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return RefreshServiceAclsResponse.newInstance();
|
|
return RefreshServiceAclsResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public UpdateNodeResourceResponse updateNodeResource(
|
|
public UpdateNodeResourceResponse updateNodeResource(
|
|
UpdateNodeResourceRequest request) throws YarnException, IOException {
|
|
UpdateNodeResourceRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return UpdateNodeResourceResponse.newInstance();
|
|
return UpdateNodeResourceResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public RefreshNodesResourcesResponse refreshNodesResources(
|
|
public RefreshNodesResourcesResponse refreshNodesResources(
|
|
RefreshNodesResourcesRequest request) throws YarnException, IOException {
|
|
RefreshNodesResourcesRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return RefreshNodesResourcesResponse.newInstance();
|
|
return RefreshNodesResourcesResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public AddToClusterNodeLabelsResponse addToClusterNodeLabels(
|
|
public AddToClusterNodeLabelsResponse addToClusterNodeLabels(
|
|
AddToClusterNodeLabelsRequest request) throws YarnException, IOException {
|
|
AddToClusterNodeLabelsRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return AddToClusterNodeLabelsResponse.newInstance();
|
|
return AddToClusterNodeLabelsResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@@ -677,12 +808,18 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
public RemoveFromClusterNodeLabelsResponse removeFromClusterNodeLabels(
|
|
public RemoveFromClusterNodeLabelsResponse removeFromClusterNodeLabels(
|
|
RemoveFromClusterNodeLabelsRequest request)
|
|
RemoveFromClusterNodeLabelsRequest request)
|
|
throws YarnException, IOException {
|
|
throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return RemoveFromClusterNodeLabelsResponse.newInstance();
|
|
return RemoveFromClusterNodeLabelsResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public ReplaceLabelsOnNodeResponse replaceLabelsOnNode(
|
|
public ReplaceLabelsOnNodeResponse replaceLabelsOnNode(
|
|
ReplaceLabelsOnNodeRequest request) throws YarnException, IOException {
|
|
ReplaceLabelsOnNodeRequest request) throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return ReplaceLabelsOnNodeResponse.newInstance();
|
|
return ReplaceLabelsOnNodeResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@@ -690,6 +827,9 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
public CheckForDecommissioningNodesResponse checkForDecommissioningNodes(
|
|
public CheckForDecommissioningNodesResponse checkForDecommissioningNodes(
|
|
CheckForDecommissioningNodesRequest checkForDecommissioningNodesRequest)
|
|
CheckForDecommissioningNodesRequest checkForDecommissioningNodesRequest)
|
|
throws YarnException, IOException {
|
|
throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return CheckForDecommissioningNodesResponse.newInstance(null);
|
|
return CheckForDecommissioningNodesResponse.newInstance(null);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -697,11 +837,17 @@ public class MockResourceManagerFacade implements ApplicationClientProtocol,
|
|
public RefreshClusterMaxPriorityResponse refreshClusterMaxPriority(
|
|
public RefreshClusterMaxPriorityResponse refreshClusterMaxPriority(
|
|
RefreshClusterMaxPriorityRequest request)
|
|
RefreshClusterMaxPriorityRequest request)
|
|
throws YarnException, IOException {
|
|
throws YarnException, IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return RefreshClusterMaxPriorityResponse.newInstance();
|
|
return RefreshClusterMaxPriorityResponse.newInstance();
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public String[] getGroupsForUser(String user) throws IOException {
|
|
public String[] getGroupsForUser(String user) throws IOException {
|
|
|
|
+
|
|
|
|
+ validateRunning();
|
|
|
|
+
|
|
return new String[0];
|
|
return new String[0];
|
|
}
|
|
}
|
|
}
|
|
}
|