You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yarn-commits@hadoop.apache.org by tg...@apache.org on 2013/02/06 19:44:54 UTC
svn commit: r1443118 - in
/hadoop/common/branches/branch-0.23/hadoop-yarn-project: ./ hadoop-yarn/
hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-distributedshell/
hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-distributed...
Author: tgraves
Date: Wed Feb 6 18:44:53 2013
New Revision: 1443118
URL: http://svn.apache.org/viewvc?rev=1443118&view=rev
Log:
YARN-83. Change package of YarnClient to include apache (Bikas Saha via tgraves). This als includes YARN-29.
Added:
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/
- copied from r1377781, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/dev-support/
- copied from r1377781, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/dev-support/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/
- copied from r1377781, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/
- copied from r1377781, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/
- copied from r1377781, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/
- copied from r1377781, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/
- copied from r1381273, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/
- copied from r1381273, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/
- copied from r1381273, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/
- copied from r1381273, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/YarnClient.java
- copied unchanged from r1381273, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/YarnClient.java
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/YarnClientImpl.java
- copied unchanged from r1381273, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/YarnClientImpl.java
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/
- copied from r1395793, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/ApplicationCLI.java
- copied unchanged from r1395793, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/ApplicationCLI.java
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/NodeCLI.java
- copied, changed from r1395793, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/NodeCLI.java
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/YarnCLI.java
- copied unchanged from r1395793, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/YarnCLI.java
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/
- copied from r1377781, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/
- copied from r1377781, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/
- copied from r1377781, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/
- copied from r1381273, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/
- copied from r1381273, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/
- copied from r1381273, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/
- copied from r1381273, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/TestYarnClient.java
- copied, changed from r1381273, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/TestYarnClient.java
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/
- copied from r1395793, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestYarnCLI.java
- copied, changed from r1395793, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestYarnCLI.java
Modified:
hadoop/common/branches/branch-0.23/hadoop-yarn-project/CHANGES.txt
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-distributedshell/pom.xml
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-distributedshell/src/main/java/org/apache/hadoop/yarn/applications/distributedshell/Client.java
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/dev-support/findbugs-exclude.xml
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/pom.xml
hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/pom.xml
Modified: hadoop/common/branches/branch-0.23/hadoop-yarn-project/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23/hadoop-yarn-project/CHANGES.txt?rev=1443118&r1=1443117&r2=1443118&view=diff
==============================================================================
--- hadoop/common/branches/branch-0.23/hadoop-yarn-project/CHANGES.txt (original)
+++ hadoop/common/branches/branch-0.23/hadoop-yarn-project/CHANGES.txt Wed Feb 6 18:44:53 2013
@@ -25,6 +25,11 @@ Release 0.23.7 - UNRELEASED
YARN-364. AggregatedLogDeletionService can take too long to delete logs
(jlowe)
+ YARN-29. Add a yarn-client module (Vinod Kumar Vavilapalli via tgraves)
+
+ YARN-83. Change package of YarnClient to include apache (Bikas Saha via
+ tgraves)
+
Release 0.23.6 - UNRELEASED
INCOMPATIBLE CHANGES
Modified: hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-distributedshell/pom.xml
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-distributedshell/pom.xml?rev=1443118&r1=1443117&r2=1443118&view=diff
==============================================================================
--- hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-distributedshell/pom.xml (original)
+++ hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-distributedshell/pom.xml Wed Feb 6 18:44:53 2013
@@ -43,6 +43,10 @@
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
+ <artifactId>hadoop-yarn-client</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-yarn-server-nodemanager</artifactId>
<scope>test</scope>
</dependency>
Modified: hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-distributedshell/src/main/java/org/apache/hadoop/yarn/applications/distributedshell/Client.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-distributedshell/src/main/java/org/apache/hadoop/yarn/applications/distributedshell/Client.java?rev=1443118&r1=1443117&r2=1443118&view=diff
==============================================================================
--- hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-distributedshell/src/main/java/org/apache/hadoop/yarn/applications/distributedshell/Client.java (original)
+++ hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-distributedshell/src/main/java/org/apache/hadoop/yarn/applications/distributedshell/Client.java Wed Feb 6 18:44:53 2013
@@ -22,7 +22,6 @@ import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
-import java.net.InetSocketAddress;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -44,20 +43,8 @@ import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.yarn.api.ApplicationConstants;
import org.apache.hadoop.yarn.api.ClientRMProtocol;
-import org.apache.hadoop.yarn.api.protocolrecords.GetApplicationReportRequest;
-import org.apache.hadoop.yarn.api.protocolrecords.GetApplicationReportResponse;
-import org.apache.hadoop.yarn.api.protocolrecords.GetClusterMetricsRequest;
-import org.apache.hadoop.yarn.api.protocolrecords.GetClusterMetricsResponse;
-import org.apache.hadoop.yarn.api.protocolrecords.GetClusterNodesRequest;
-import org.apache.hadoop.yarn.api.protocolrecords.GetClusterNodesResponse;
-import org.apache.hadoop.yarn.api.protocolrecords.GetNewApplicationRequest;
import org.apache.hadoop.yarn.api.protocolrecords.GetNewApplicationResponse;
-import org.apache.hadoop.yarn.api.protocolrecords.GetQueueInfoRequest;
-import org.apache.hadoop.yarn.api.protocolrecords.GetQueueInfoResponse;
-import org.apache.hadoop.yarn.api.protocolrecords.GetQueueUserAclsInfoRequest;
-import org.apache.hadoop.yarn.api.protocolrecords.GetQueueUserAclsInfoResponse;
import org.apache.hadoop.yarn.api.protocolrecords.KillApplicationRequest;
-import org.apache.hadoop.yarn.api.protocolrecords.SubmitApplicationRequest;
import org.apache.hadoop.yarn.api.records.ApplicationId;
import org.apache.hadoop.yarn.api.records.ApplicationReport;
import org.apache.hadoop.yarn.api.records.ApplicationSubmissionContext;
@@ -73,13 +60,13 @@ import org.apache.hadoop.yarn.api.record
import org.apache.hadoop.yarn.api.records.QueueUserACLInfo;
import org.apache.hadoop.yarn.api.records.Resource;
import org.apache.hadoop.yarn.api.records.YarnApplicationState;
+import org.apache.hadoop.yarn.api.records.YarnClusterMetrics;
+import org.apache.hadoop.yarn.client.YarnClientImpl;
import org.apache.hadoop.yarn.conf.YarnConfiguration;
import org.apache.hadoop.yarn.exceptions.YarnRemoteException;
-import org.apache.hadoop.yarn.ipc.YarnRPC;
import org.apache.hadoop.yarn.util.ConverterUtils;
import org.apache.hadoop.yarn.util.Records;
-
/**
* Client for Distributed Shell application submission to YARN.
*
@@ -113,19 +100,13 @@ import org.apache.hadoop.yarn.util.Recor
*/
@InterfaceAudience.Public
@InterfaceStability.Unstable
-public class Client {
+public class Client extends YarnClientImpl {
private static final Log LOG = LogFactory.getLog(Client.class);
// Configuration
private Configuration conf;
- // RPC to communicate to RM
- private YarnRPC rpc;
-
- // Handle to talk to the Resource Manager/Applications Manager
- private ClientRMProtocol applicationsManager;
-
// Application master specific info to register a new Application with RM/ASM
private String appName = "";
// App master priority
@@ -198,9 +179,9 @@ public class Client {
/**
*/
public Client(Configuration conf) throws Exception {
- // Set up the configuration and RPC
+ super();
this.conf = conf;
- rpc = YarnRPC.create(conf);
+ init(conf);
}
/**
@@ -331,22 +312,17 @@ public class Client {
* @throws IOException
*/
public boolean run() throws IOException {
- LOG.info("Starting Client");
- // Connect to ResourceManager
- connectToASM();
- assert(applicationsManager != null);
-
- // Use ClientRMProtocol handle to general cluster information
- GetClusterMetricsRequest clusterMetricsReq = Records.newRecord(GetClusterMetricsRequest.class);
- GetClusterMetricsResponse clusterMetricsResp = applicationsManager.getClusterMetrics(clusterMetricsReq);
+ LOG.info("Running Client");
+ start();
+
+ YarnClusterMetrics clusterMetrics = super.getYarnClusterMetrics();
LOG.info("Got Cluster metric info from ASM"
- + ", numNodeManagers=" + clusterMetricsResp.getClusterMetrics().getNumNodeManagers());
+ + ", numNodeManagers=" + clusterMetrics.getNumNodeManagers());
- GetClusterNodesRequest clusterNodesReq = Records.newRecord(GetClusterNodesRequest.class);
- GetClusterNodesResponse clusterNodesResp = applicationsManager.getClusterNodes(clusterNodesReq);
+ List<NodeReport> clusterNodeReports = super.getNodeReports();
LOG.info("Got Cluster node info from ASM");
- for (NodeReport node : clusterNodesResp.getNodeReports()) {
+ for (NodeReport node : clusterNodeReports) {
LOG.info("Got node report from ASM for"
+ ", nodeId=" + node.getNodeId()
+ ", nodeAddress" + node.getHttpAddress()
@@ -355,9 +331,7 @@ public class Client {
+ ", nodeHealthStatus" + node.getNodeHealthStatus());
}
- GetQueueInfoRequest queueInfoReq = Records.newRecord(GetQueueInfoRequest.class);
- GetQueueInfoResponse queueInfoResp = applicationsManager.getQueueInfo(queueInfoReq);
- QueueInfo queueInfo = queueInfoResp.getQueueInfo();
+ QueueInfo queueInfo = super.getQueueInfo(this.amQueue);
LOG.info("Queue info"
+ ", queueName=" + queueInfo.getQueueName()
+ ", queueCurrentCapacity=" + queueInfo.getCurrentCapacity()
@@ -365,9 +339,7 @@ public class Client {
+ ", queueApplicationCount=" + queueInfo.getApplications().size()
+ ", queueChildQueueCount=" + queueInfo.getChildQueues().size());
- GetQueueUserAclsInfoRequest queueUserAclsReq = Records.newRecord(GetQueueUserAclsInfoRequest.class);
- GetQueueUserAclsInfoResponse queueUserAclsResp = applicationsManager.getQueueUserAcls(queueUserAclsReq);
- List<QueueUserACLInfo> listAclInfo = queueUserAclsResp.getUserAclsInfoList();
+ List<QueueUserACLInfo> listAclInfo = super.getQueueAclsInfo();
for (QueueUserACLInfo aclInfo : listAclInfo) {
for (QueueACL userAcl : aclInfo.getUserAcls()) {
LOG.info("User ACL Info for Queue"
@@ -377,7 +349,7 @@ public class Client {
}
// Get a new application id
- GetNewApplicationResponse newApp = getApplication();
+ GetNewApplicationResponse newApp = super.getNewApplication();
ApplicationId appId = newApp.getApplicationId();
// TODO get min/max resource capabilities from RM and change memory ask if needed
@@ -598,16 +570,12 @@ public class Client {
// TODO can it be empty?
appContext.setUser(amUser);
- // Create the request to send to the applications manager
- SubmitApplicationRequest appRequest = Records.newRecord(SubmitApplicationRequest.class);
- appRequest.setApplicationSubmissionContext(appContext);
-
// Submit the application to the applications manager
// SubmitApplicationResponse submitResp = applicationsManager.submitApplication(appRequest);
// Ignore the response as either a valid response object is returned on success
// or an exception thrown to denote some form of a failure
LOG.info("Submitting application to ASM");
- applicationsManager.submitApplication(appRequest);
+ super.submitApplication(appContext);
// TODO
// Try submitting the same request again
@@ -637,10 +605,7 @@ public class Client {
}
// Get application report for the appId we are interested in
- GetApplicationReportRequest reportRequest = Records.newRecord(GetApplicationReportRequest.class);
- reportRequest.setApplicationId(appId);
- GetApplicationReportResponse reportResponse = applicationsManager.getApplicationReport(reportRequest);
- ApplicationReport report = reportResponse.getApplicationReport();
+ ApplicationReport report = super.getApplicationReport(appId);
LOG.info("Got application report from ASM for"
+ ", appId=" + appId.getId()
@@ -679,7 +644,7 @@ public class Client {
if (System.currentTimeMillis() > (clientStartTime + clientTimeout)) {
LOG.info("Reached client specified timeout for application. Killing application");
- killApplication(appId);
+ forceKillApplication(appId);
return false;
}
}
@@ -691,61 +656,14 @@ public class Client {
* @param appId Application Id to be killed.
* @throws YarnRemoteException
*/
- private void killApplication(ApplicationId appId) throws YarnRemoteException {
- KillApplicationRequest request = Records.newRecord(KillApplicationRequest.class);
+ private void forceKillApplication(ApplicationId appId) throws YarnRemoteException {
// TODO clarify whether multiple jobs with the same app id can be submitted and be running at
// the same time.
// If yes, can we kill a particular attempt only?
- request.setApplicationId(appId);
- // KillApplicationResponse response = applicationsManager.forceKillApplication(request);
+
// Response can be ignored as it is non-null on success or
// throws an exception in case of failures
- applicationsManager.forceKillApplication(request);
- }
-
- /**
- * Connect to the Resource Manager/Applications Manager
- * @return Handle to communicate with the ASM
- * @throws IOException
- */
- private void connectToASM() throws IOException {
-
- /*
- UserGroupInformation user = UserGroupInformation.getCurrentUser();
- applicationsManager = user.doAs(new PrivilegedAction<ClientRMProtocol>() {
- public ClientRMProtocol run() {
- InetSocketAddress rmAddress = NetUtils.createSocketAddr(conf.get(
- YarnConfiguration.RM_SCHEDULER_ADDRESS,
- YarnConfiguration.DEFAULT_RM_SCHEDULER_ADDRESS));
- LOG.info("Connecting to ResourceManager at " + rmAddress);
- Configuration appsManagerServerConf = new Configuration(conf);
- appsManagerServerConf.setClass(YarnConfiguration.YARN_SECURITY_INFO,
- ClientRMSecurityInfo.class, SecurityInfo.class);
- ClientRMProtocol asm = ((ClientRMProtocol) rpc.getProxy(ClientRMProtocol.class, rmAddress, appsManagerServerConf));
- return asm;
- }
- });
- */
- YarnConfiguration yarnConf = new YarnConfiguration(conf);
- InetSocketAddress rmAddress = yarnConf.getSocketAddr(
- YarnConfiguration.RM_ADDRESS,
- YarnConfiguration.DEFAULT_RM_ADDRESS,
- YarnConfiguration.DEFAULT_RM_PORT);
- LOG.info("Connecting to ResourceManager at " + rmAddress);
- applicationsManager = ((ClientRMProtocol) rpc.getProxy(
- ClientRMProtocol.class, rmAddress, conf));
- }
-
- /**
- * Get a new application from the ASM
- * @return New Application
- * @throws YarnRemoteException
- */
- private GetNewApplicationResponse getApplication() throws YarnRemoteException {
- GetNewApplicationRequest request = Records.newRecord(GetNewApplicationRequest.class);
- GetNewApplicationResponse response = applicationsManager.getNewApplication(request);
- LOG.info("Got new application id=" + response.getApplicationId());
- return response;
+ super.killApplication(appId);
}
private static String getTestRuntimeClasspath() {
Modified: hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/dev-support/findbugs-exclude.xml
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/dev-support/findbugs-exclude.xml?rev=1443118&r1=1377781&r2=1443118&view=diff
==============================================================================
(empty)
Modified: hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/pom.xml
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/pom.xml?rev=1443118&r1=1377781&r2=1443118&view=diff
==============================================================================
--- hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/pom.xml (original)
+++ hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/pom.xml Wed Feb 6 18:44:53 2013
@@ -17,11 +17,11 @@
<parent>
<artifactId>hadoop-yarn</artifactId>
<groupId>org.apache.hadoop</groupId>
- <version>3.0.0-SNAPSHOT</version>
+ <version>0.23.7-SNAPSHOT</version>
</parent>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-yarn-client</artifactId>
- <version>3.0.0-SNAPSHOT</version>
+ <version>0.23.7-SNAPSHOT</version>
<name>hadoop-yarn-client</name>
<dependencies>
@@ -33,5 +33,23 @@
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-yarn-common</artifactId>
</dependency>
+ <dependency>
+ <groupId>org.apache.hadoop</groupId>
+ <artifactId>hadoop-yarn-server-resourcemanager</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.hadoop</groupId>
+ <artifactId>hadoop-yarn-server-tests</artifactId>
+ <scope>test</scope>
+ <type>test-jar</type>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.hadoop</groupId>
+ <artifactId>hadoop-yarn-server-resourcemanager</artifactId>
+ <scope>test</scope>
+ <type>test-jar</type>
+ </dependency>
+
</dependencies>
</project>
Copied: hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/NodeCLI.java (from r1395793, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/NodeCLI.java)
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/NodeCLI.java?p2=hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/NodeCLI.java&p1=hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/NodeCLI.java&r1=1395793&r2=1443118&rev=1443118&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/NodeCLI.java (original)
+++ hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/NodeCLI.java Wed Feb 6 18:44:53 2013
@@ -31,7 +31,7 @@ import org.apache.hadoop.yarn.exceptions
import org.apache.hadoop.yarn.util.ConverterUtils;
public class NodeCLI extends YarnCLI {
- private static final String NODES_PATTERN = "%16s\t%10s\t%17s\t%26s\t%18s\n";
+ private static final String NODES_PATTERN = "%16s\t%17s\t%26s\t%18s\n";
public static void main(String[] args) throws Exception {
NodeCLI cli = new NodeCLI();
cli.setSysOutPrintStream(System.out);
@@ -83,11 +83,11 @@ public class NodeCLI extends YarnCLI {
PrintWriter writer = new PrintWriter(sysout);
List<NodeReport> nodesReport = client.getNodeReports();
writer.println("Total Nodes:" + nodesReport.size());
- writer.printf(NODES_PATTERN, "Node-Id", "Node-State", "Node-Http-Address",
+ writer.printf(NODES_PATTERN, "Node-Id", "Node-Http-Address",
"Health-Status(isNodeHealthy)", "Running-Containers");
for (NodeReport nodeReport : nodesReport) {
- writer.printf(NODES_PATTERN, nodeReport.getNodeId(), nodeReport
- .getNodeState(), nodeReport.getHttpAddress(), nodeReport
+ writer.printf(NODES_PATTERN, nodeReport.getNodeId(),
+ nodeReport.getHttpAddress(), nodeReport
.getNodeHealthStatus().getIsNodeHealthy(), nodeReport
.getNumContainers());
}
@@ -115,8 +115,6 @@ public class NodeCLI extends YarnCLI {
nodeReportStr.append(nodeReport.getNodeId());
nodeReportStr.append("\n\tRack : ");
nodeReportStr.append(nodeReport.getRackName());
- nodeReportStr.append("\n\tNode-State : ");
- nodeReportStr.append(nodeReport.getNodeState());
nodeReportStr.append("\n\tNode-Http-Address : ");
nodeReportStr.append(nodeReport.getHttpAddress());
nodeReportStr.append("\n\tHealth-Status(isNodeHealthy) : ");
@@ -144,4 +142,4 @@ public class NodeCLI extends YarnCLI {
sysout.println(nodeReportStr.toString());
}
-}
\ No newline at end of file
+}
Copied: hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/TestYarnClient.java (from r1381273, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/TestYarnClient.java)
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/TestYarnClient.java?p2=hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/TestYarnClient.java&p1=hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/TestYarnClient.java&r1=1381273&r2=1443118&rev=1443118&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/TestYarnClient.java (original)
+++ hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/TestYarnClient.java Wed Feb 6 18:44:53 2013
@@ -21,6 +21,7 @@ package org.apache.hadoop.yarn.client;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.yarn.client.YarnClient;
import org.apache.hadoop.yarn.client.YarnClientImpl;
+import org.apache.hadoop.yarn.conf.YarnConfiguration;
import org.apache.hadoop.yarn.server.resourcemanager.ResourceManager;
import org.junit.Test;
@@ -33,7 +34,7 @@ public class TestYarnClient {
@Test
public void testClientStop() {
- Configuration conf = new Configuration();
+ Configuration conf = new YarnConfiguration();
ResourceManager rm = new ResourceManager(null);
rm.init(conf);
rm.start();
Copied: hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestYarnCLI.java (from r1395793, hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestYarnCLI.java)
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestYarnCLI.java?p2=hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestYarnCLI.java&p1=hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestYarnCLI.java&r1=1395793&r2=1443118&rev=1443118&view=diff
==============================================================================
--- hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestYarnCLI.java (original)
+++ hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestYarnCLI.java Wed Feb 6 18:44:53 2013
@@ -40,10 +40,11 @@ import org.apache.hadoop.yarn.api.record
import org.apache.hadoop.yarn.api.records.NodeHealthStatus;
import org.apache.hadoop.yarn.api.records.NodeId;
import org.apache.hadoop.yarn.api.records.NodeReport;
-import org.apache.hadoop.yarn.api.records.NodeState;
import org.apache.hadoop.yarn.api.records.Resource;
import org.apache.hadoop.yarn.api.records.YarnApplicationState;
import org.apache.hadoop.yarn.client.YarnClient;
+import org.apache.hadoop.yarn.factories.RecordFactory;
+import org.apache.hadoop.yarn.factory.providers.RecordFactoryProvider;
import org.apache.hadoop.yarn.util.BuilderUtils;
import org.apache.hadoop.yarn.util.Records;
import org.junit.Before;
@@ -51,6 +52,9 @@ import org.junit.Test;
public class TestYarnCLI {
+ private static final RecordFactory recordFactory = RecordFactoryProvider
+ .getRecordFactory(null);
+
private YarnClient client = mock(YarnClient.class);
ByteArrayOutputStream sysOutStream;
private PrintStream sysOut;
@@ -70,7 +74,7 @@ public class TestYarnCLI {
ApplicationCLI cli = createAndGetAppCLI();
ApplicationId applicationId = BuilderUtils.newApplicationId(1234, 5);
ApplicationReport newApplicationReport = BuilderUtils.newApplicationReport(
- applicationId, BuilderUtils.newApplicationAttemptId(applicationId, 1),
+ applicationId,
"user", "queue", "appname", "host", 124, null,
YarnApplicationState.FINISHED, "diagnostics", "url", 0, 0,
FinalApplicationStatus.SUCCEEDED, null, "N/A");
@@ -94,7 +98,7 @@ public class TestYarnCLI {
ApplicationCLI cli = createAndGetAppCLI();
ApplicationId applicationId = BuilderUtils.newApplicationId(1234, 5);
ApplicationReport newApplicationReport = BuilderUtils.newApplicationReport(
- applicationId, BuilderUtils.newApplicationAttemptId(applicationId, 1),
+ applicationId,
"user", "queue", "appname", "host", 124, null,
YarnApplicationState.FINISHED, "diagnostics", "url", 0, 0,
FinalApplicationStatus.SUCCEEDED, null, "N/A");
@@ -140,13 +144,13 @@ public class TestYarnCLI {
StringBuffer nodesReportStr = new StringBuffer();
nodesReportStr.append("Total Nodes:3");
nodesReportStr
- .append("\n Node-Id\tNode-State\tNode-Http-Address\t"
+ .append("\n Node-Id\tNode-Http-Address\t"
+ "Health-Status(isNodeHealthy)\tRunning-Containers");
- nodesReportStr.append("\n host0:0\t RUNNING\t host1:8888"
+ nodesReportStr.append("\n host0:0\t host1:8888"
+ "\t false\t 0");
- nodesReportStr.append("\n host1:0\t RUNNING\t host1:8888"
+ nodesReportStr.append("\n host1:0\t host1:8888"
+ "\t false\t 0");
- nodesReportStr.append("\n host2:0\t RUNNING\t host1:8888"
+ nodesReportStr.append("\n host2:0\t host1:8888"
+ "\t false\t 0\n");
Assert.assertEquals(nodesReportStr.toString(), sysOutStream.toString());
verify(sysOut, times(1)).write(any(byte[].class), anyInt(), anyInt());
@@ -164,7 +168,7 @@ public class TestYarnCLI {
assertEquals(0, result);
verify(client).getNodeReports();
String nodeStatusStr = "Node Report : \n\tNode-Id : host0:0\n\t"
- + "Rack : rack1\n\tNode-State : RUNNING\n\t"
+ + "Rack : rack1\n\t"
+ "Node-Http-Address : host1:8888\n\tHealth-Status(isNodeHealthy) "
+ ": false\n\tLast-Last-Health-Update : 0\n\tHealth-Report : null"
+ "\n\tContainers : 0\n\tMemory-Used : 0M\n\tMemory-Capacity : 0";
@@ -206,18 +210,33 @@ public class TestYarnCLI {
private List<NodeReport> getNodeReports(int noOfNodes) {
List<NodeReport> nodeReports = new ArrayList<NodeReport>();
-
+
for (int i = 0; i < noOfNodes; i++) {
- NodeReport nodeReport = BuilderUtils.newNodeReport(BuilderUtils
- .newNodeId("host" + i, 0), NodeState.RUNNING, "host" + 1 + ":8888",
- "rack1", Records.newRecord(Resource.class), Records
- .newRecord(Resource.class), 0, Records
- .newRecord(NodeHealthStatus.class));
+ NodeReport nodeReport = newNodeReport(BuilderUtils
+ .newNodeId("host" + i, 0), "host" + 1 + ":8888",
+ "rack1", Records.newRecord(Resource.class), Records
+ .newRecord(Resource.class), 0, Records
+ .newRecord(NodeHealthStatus.class));
nodeReports.add(nodeReport);
}
return nodeReports;
}
+ private static NodeReport newNodeReport(NodeId nodeId,
+ String httpAddress, String rackName, Resource used, Resource capability,
+ int numContainers, NodeHealthStatus nodeHealthStatus) {
+ NodeReport nodeReport = recordFactory.newRecordInstance(NodeReport.class);
+ nodeReport.setNodeId(nodeId);
+ nodeReport.setHttpAddress(httpAddress);
+ nodeReport.setRackName(rackName);
+ nodeReport.setUsed(used);
+ nodeReport.setCapability(capability);
+ nodeReport.setNumContainers(numContainers);
+ nodeReport.setNodeHealthStatus(nodeHealthStatus);
+ return nodeReport;
+ }
+
+
private ApplicationCLI createAndGetAppCLI() {
ApplicationCLI cli = new ApplicationCLI();
cli.setClient(client);
@@ -225,4 +244,4 @@ public class TestYarnCLI {
return cli;
}
-}
\ No newline at end of file
+}
Modified: hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/pom.xml
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/pom.xml?rev=1443118&r1=1443117&r2=1443118&view=diff
==============================================================================
--- hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/pom.xml (original)
+++ hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/pom.xml Wed Feb 6 18:44:53 2013
@@ -11,8 +11,7 @@
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License. See accompanying LICENSE file.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+--><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache.hadoop</groupId>
@@ -244,5 +243,6 @@
<module>hadoop-yarn-server</module>
<module>hadoop-yarn-applications</module>
<module>hadoop-yarn-site</module>
+ <module>hadoop-yarn-client</module>
</modules>
-</project>
+</project>
\ No newline at end of file