public class org.apache.drill.yarn.client.ResizeCommand extends org.apache.drill.yarn.client.ClientCommand
{
private com.typesafe.config.Config config;
private org.apache.drill.yarn.core.YarnRMClient client;
public void <init>()
{
org.apache.drill.yarn.client.ResizeCommand v;
v := @this: org.apache.drill.yarn.client.ResizeCommand;
specialinvoke v.<org.apache.drill.yarn.client.ClientCommand: void <init>()>();
return;
}
public void run() throws org.apache.drill.yarn.client.ClientException
{
org.apache.drill.yarn.core.YarnRMClient v, v, v;
org.apache.drill.yarn.client.CommandLineOptions v, v, v, v, v;
boolean v, v, v, v, v, v;
org.apache.drill.yarn.client.ResizeCommand v;
org.apache.hadoop.yarn.api.records.ApplicationId v;
org.apache.drill.yarn.client.StatusCommand$Reporter v, v;
int v;
java.lang.String v, v, v, v, v, v, v, v;
java.io.PrintStream v, v, v, v, v;
com.typesafe.config.Config v;
org.apache.drill.yarn.client.ClientException v;
v := @this: org.apache.drill.yarn.client.ResizeCommand;
v = staticinvoke <org.apache.drill.yarn.core.DrillOnYarnConfig: com.typesafe.config.Config config()>();
v.<org.apache.drill.yarn.client.ResizeCommand: com.typesafe.config.Config config> = v;
v = virtualinvoke v.<org.apache.drill.yarn.client.ResizeCommand: org.apache.drill.yarn.core.YarnRMClient getClient()>();
v.<org.apache.drill.yarn.client.ResizeCommand: org.apache.drill.yarn.core.YarnRMClient client> = v;
v = <java.lang.System: java.io.PrintStream out>;
v = v.<org.apache.drill.yarn.client.ResizeCommand: org.apache.drill.yarn.core.YarnRMClient client>;
v = virtualinvoke v.<org.apache.drill.yarn.core.YarnRMClient: org.apache.hadoop.yarn.api.records.ApplicationId getAppId()>();
v = virtualinvoke v.<org.apache.hadoop.yarn.api.records.ApplicationId: java.lang.String toString()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Resizing cluster for Application ID: \u0001");
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
v = new org.apache.drill.yarn.client.StatusCommand$Reporter;
v = v.<org.apache.drill.yarn.client.ResizeCommand: org.apache.drill.yarn.core.YarnRMClient client>;
specialinvoke v.<org.apache.drill.yarn.client.StatusCommand$Reporter: void <init>(org.apache.drill.yarn.core.YarnRMClient)>(v);
v = v;
label:
virtualinvoke v.<org.apache.drill.yarn.client.StatusCommand$Reporter: void getReport()>();
label:
goto label;
label:
v := @caughtexception;
v = null;
label:
v = v.<org.apache.drill.yarn.client.ResizeCommand: org.apache.drill.yarn.client.CommandLineOptions opts>;
v = v.<org.apache.drill.yarn.client.CommandLineOptions: java.lang.String resizePrefix>;
v = v.<org.apache.drill.yarn.client.ResizeCommand: org.apache.drill.yarn.client.CommandLineOptions opts>;
v = v.<org.apache.drill.yarn.client.CommandLineOptions: int resizeValue>;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("+");
if v == 0 goto label;
v = "grow";
v = v.<org.apache.drill.yarn.client.ResizeCommand: org.apache.drill.yarn.client.CommandLineOptions opts>;
v = v.<org.apache.drill.yarn.client.CommandLineOptions: boolean verbose>;
if v == 0 goto label;
v = <java.lang.System: java.io.PrintStream out>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Growing cluster by \u nodes.");
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
goto label;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("-");
if v == 0 goto label;
v = "shrink";
v = v.<org.apache.drill.yarn.client.ResizeCommand: org.apache.drill.yarn.client.CommandLineOptions opts>;
v = v.<org.apache.drill.yarn.client.CommandLineOptions: boolean verbose>;
if v == 0 goto label;
v = <java.lang.System: java.io.PrintStream out>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Shrinking cluster by \u nodes.");
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
goto label;
label:
v = "resize";
v = v.<org.apache.drill.yarn.client.ResizeCommand: org.apache.drill.yarn.client.CommandLineOptions opts>;
v = v.<org.apache.drill.yarn.client.CommandLineOptions: boolean verbose>;
if v == 0 goto label;
v = <java.lang.System: java.io.PrintStream out>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Resizing cluster to \u nodes.");
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.apache.drill.yarn.client.StatusCommand$Reporter: java.lang.String getAmUrl()>();
v = specialinvoke v.<org.apache.drill.yarn.client.ResizeCommand: boolean sendResize(java.lang.String,java.lang.String,int)>(v, v, v);
if v == 0 goto label;
v = <java.lang.System: java.io.PrintStream out>;
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>("Use web UI or status command to check progress.");
label:
return;
catch org.apache.drill.yarn.client.ClientException from label to label with label;
}
private boolean sendResize(java.lang.String, java.lang.String, int)
{
org.apache.drill.yarn.client.CommandLineOptions v, v;
boolean v, v, v, v, v;
org.json.simple.parser.JSONParser v;
org.apache.drill.yarn.client.ResizeCommand v;
java.lang.Throwable v;
org.apache.drill.yarn.client.SimpleRestClient v;
int v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v;
java.io.PrintStream v, v, v, v, v, v, v;
com.typesafe.config.Config v;
org.apache.drill.yarn.client.ClientException v;
java.lang.Object v, v, v;
v := @this: org.apache.drill.yarn.client.ResizeCommand;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: int;
label:
v = staticinvoke <org.apache.drill.yarn.core.DoYUtil: boolean isBlank(java.lang.String)>(v);
if v == 0 goto label;
label:
return 0;
label:
v = new org.apache.drill.yarn.client.SimpleRestClient;
specialinvoke v.<org.apache.drill.yarn.client.SimpleRestClient: void <init>()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,int)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("rest/\u0001/\u0001");
v = v.<org.apache.drill.yarn.client.ResizeCommand: com.typesafe.config.Config config>;
v = <org.apache.drill.yarn.core.DrillOnYarnConfig: java.lang.String HTTP_REST_KEY>;
v = interfaceinvoke v.<com.typesafe.config.Config: java.lang.String getString(java.lang.String)>(v);
v = staticinvoke <org.apache.drill.yarn.core.DoYUtil: boolean isBlank(java.lang.String)>(v);
if v != 0 goto label;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001?key=\u0001");
label:
v = v.<org.apache.drill.yarn.client.ResizeCommand: org.apache.drill.yarn.client.CommandLineOptions opts>;
v = v.<org.apache.drill.yarn.client.CommandLineOptions: boolean verbose>;
if v == 0 goto label;
v = <java.lang.System: java.io.PrintStream out>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Resizing with POST \u0001/\u0001");
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.apache.drill.yarn.client.SimpleRestClient: java.lang.String send(java.lang.String,java.lang.String,boolean)>(v, v, 1);
v = new org.json.simple.parser.JSONParser;
specialinvoke v.<org.json.simple.parser.JSONParser: void <init>()>();
label:
v = virtualinvoke v.<org.json.simple.parser.JSONParser: java.lang.Object parse(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <java.lang.System: java.io.PrintStream err>;
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>("Invalid response received from AM");
v = v.<org.apache.drill.yarn.client.ResizeCommand: org.apache.drill.yarn.client.CommandLineOptions opts>;
v = v.<org.apache.drill.yarn.client.CommandLineOptions: boolean verbose>;
if v == 0 goto label;
v = <java.lang.System: java.io.PrintStream out>;
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
v = <java.lang.System: java.io.PrintStream out>;
v = virtualinvoke v.<org.json.simple.parser.ParseException: java.lang.String getMessage()>();
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
label:
return 0;
label:
v = <java.lang.System: java.io.PrintStream out>;
v = virtualinvoke v.<org.json.simple.JSONObject: java.lang.Object get(java.lang.Object)>("message");
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Object)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("AM responded: \u0001");
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
v = "ok";
v = virtualinvoke v.<org.json.simple.JSONObject: java.lang.Object get(java.lang.Object)>("status");
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
return 1;
label:
v = <java.lang.System: java.io.PrintStream err>;
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>("Failed to resize the application master.");
label:
return 0;
label:
v := @caughtexception;
v = <java.lang.System: java.io.PrintStream err>;
v = virtualinvoke v.<org.apache.drill.yarn.client.ClientException: java.lang.String getMessage()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Resize failed: \u0001");
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
return 0;
catch org.json.simple.parser.ParseException from label to label with label;
catch org.apache.drill.yarn.client.ClientException from label to label with label;
catch org.apache.drill.yarn.client.ClientException from label to label with label;
catch org.apache.drill.yarn.client.ClientException from label to label with label;
catch org.apache.drill.yarn.client.ClientException from label to label with label;
}
}