Skip to content

Instantly share code, notes, and snippets.

@ashrithr
Last active November 16, 2021 09:48
Show Gist options
  • Save ashrithr/58ce0be83be9c2a3c6c3 to your computer and use it in GitHub Desktop.
Save ashrithr/58ce0be83be9c2a3c6c3 to your computer and use it in GitHub Desktop.

Revisions

  1. ashrithr revised this gist Oct 10, 2014. 1 changed file with 7 additions and 3 deletions.
    10 changes: 7 additions & 3 deletions YarnClientTest.java
    Original file line number Diff line number Diff line change
    @@ -4,6 +4,7 @@

    import org.apache.hadoop.yarn.api.records.ApplicationId;
    import org.apache.hadoop.yarn.api.records.ApplicationReport;
    import org.apache.hadoop.yarn.api.records.YarnApplicationState;
    import org.apache.hadoop.yarn.client.api.YarnClient;
    import org.apache.hadoop.yarn.conf.YarnConfiguration;
    import org.apache.hadoop.yarn.exceptions.YarnException;
    @@ -20,6 +21,7 @@ public static void main(String[] args) throws YarnException, IOException {
    String app_id = null;
    String user_id = null;
    List<ApplicationId> user_applications = new ArrayList<ApplicationId>();
    YarnApplicationState running_app = YarnApplicationState.RUNNING;

    YarnConfiguration conf = new YarnConfiguration();
    YarnClient c = YarnClient.createYarnClient();
    @@ -29,7 +31,7 @@ public static void main(String[] args) throws YarnException, IOException {
    if (type.equalsIgnoreCase("app_id")) {
    app_id = args[1];
    for (ApplicationReport application: c.getApplications()) {
    if (application.getApplicationId().equals(app_id))
    if (application.getApplicationId().equals(app_id) && application.getYarnApplicationState().equals(running_app))
    c.killApplication(application.getApplicationId());
    }
    } else if (type.equalsIgnoreCase("user_id")) {
    @@ -38,8 +40,10 @@ public static void main(String[] args) throws YarnException, IOException {
    if (application.getUser().equals(user_id))
    user_applications.add(application.getApplicationId());
    if (!user_applications.isEmpty()) {
    for (ApplicationId application_id: user_applications)
    c.killApplication(application_id);
    for (ApplicationId application_id: user_applications) {
    if (application.getYarnApplicationState().equals(running_app))
    c.killApplication(application_id);
    }
    } else {
    System.out.println("The user_id " + user_id + " does not have any applications associated");
    }
  2. ashrithr created this gist Oct 10, 2014.
    53 changes: 53 additions & 0 deletions YarnClientTest.java
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,53 @@
    import java.io.IOException;
    import java.util.ArrayList;
    import java.util.List;

    import org.apache.hadoop.yarn.api.records.ApplicationId;
    import org.apache.hadoop.yarn.api.records.ApplicationReport;
    import org.apache.hadoop.yarn.client.api.YarnClient;
    import org.apache.hadoop.yarn.conf.YarnConfiguration;
    import org.apache.hadoop.yarn.exceptions.YarnException;


    public class YarnClientTest {
    public static void main(String[] args) throws YarnException, IOException {
    if (args.length != 2) {
    System.err.println("Expecting 2 arguments");
    System.exit(1);
    }

    String type = args[0];
    String app_id = null;
    String user_id = null;
    List<ApplicationId> user_applications = new ArrayList<ApplicationId>();

    YarnConfiguration conf = new YarnConfiguration();
    YarnClient c = YarnClient.createYarnClient();
    c.init(conf);
    c.start();

    if (type.equalsIgnoreCase("app_id")) {
    app_id = args[1];
    for (ApplicationReport application: c.getApplications()) {
    if (application.getApplicationId().equals(app_id))
    c.killApplication(application.getApplicationId());
    }
    } else if (type.equalsIgnoreCase("user_id")) {
    user_id = args[1];
    for (ApplicationReport application: c.getApplications()) {
    if (application.getUser().equals(user_id))
    user_applications.add(application.getApplicationId());
    if (!user_applications.isEmpty()) {
    for (ApplicationId application_id: user_applications)
    c.killApplication(application_id);
    } else {
    System.out.println("The user_id " + user_id + " does not have any applications associated");
    }
    }
    } else {
    System.err.println("Expecting either 'app_id' or 'user_id' as parameter 1");
    System.exit(1);
    }

    }
    }