public class org.apache.hive.hcatalog.templeton.LauncherDelegator extends org.apache.hive.hcatalog.templeton.TempletonDelegator
{
private static final org.slf4j.Logger LOG;
protected java.lang.String runAs;
private boolean secureMeatastoreAccess;
private final java.lang.String HIVE_SHIMS_FILENAME_PATTERN;
private final java.lang.String JOB_SUBMIT_EXECUTE_THREAD_PREFIX;
private final int jobTimeoutTaskRetryCount;
private final int jobTimeoutTaskRetryIntervalInSec;
private final java.lang.String submitThreadId;
private static org.apache.hive.hcatalog.templeton.JobRequestExecutor jobRequest;
public void <init>(org.apache.hive.hcatalog.templeton.AppConfig)
{
java.lang.Thread v;
org.apache.hive.hcatalog.templeton.AppConfig v;
int v, v;
org.apache.hive.hcatalog.templeton.LauncherDelegator v;
java.lang.String v;
v := @this: org.apache.hive.hcatalog.templeton.LauncherDelegator;
v := @parameter: org.apache.hive.hcatalog.templeton.AppConfig;
specialinvoke v.<org.apache.hive.hcatalog.templeton.TempletonDelegator: void <init>(org.apache.hive.hcatalog.templeton.AppConfig)>(v);
v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: java.lang.String runAs> = null;
v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: boolean secureMeatastoreAccess> = 0;
v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: java.lang.String HIVE_SHIMS_FILENAME_PATTERN> = ".*hive-shims.*";
v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: java.lang.String JOB_SUBMIT_EXECUTE_THREAD_PREFIX> = "JobSubmitExecute";
v = staticinvoke <java.lang.Thread: java.lang.Thread currentThread()>();
v = virtualinvoke v.<java.lang.Thread: java.lang.String getName()>();
v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: java.lang.String submitThreadId> = v;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: int getInt(java.lang.String,int)>("templeton.job.timeout.task.retry.count", 0);
v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: int jobTimeoutTaskRetryCount> = v;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: int getInt(java.lang.String,int)>("templeton.job.timeout.task.retry.interval", 0);
v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: int jobTimeoutTaskRetryIntervalInSec> = v;
return;
}
public void registerJob(java.lang.String, java.lang.String, java.lang.String, java.util.Map) throws java.io.IOException
{
java.lang.Throwable v;
org.apache.hive.hcatalog.templeton.LauncherDelegator v;
org.apache.hive.hcatalog.templeton.tool.JobState v, v;
java.util.Map v;
org.apache.hive.hcatalog.templeton.AppConfig v;
java.lang.String v, v, v;
v := @this: org.apache.hive.hcatalog.templeton.LauncherDelegator;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.util.Map;
v = null;
label:
v = new org.apache.hive.hcatalog.templeton.tool.JobState;
v = staticinvoke <org.apache.hive.hcatalog.templeton.Main: org.apache.hive.hcatalog.templeton.AppConfig getAppConfigInstance()>();
specialinvoke v.<org.apache.hive.hcatalog.templeton.tool.JobState: void <init>(java.lang.String,org.apache.hadoop.conf.Configuration)>(v, v);
v = v;
virtualinvoke v.<org.apache.hive.hcatalog.templeton.tool.JobState: void setUser(java.lang.String)>(v);
virtualinvoke v.<org.apache.hive.hcatalog.templeton.tool.JobState: void setCallback(java.lang.String)>(v);
virtualinvoke v.<org.apache.hive.hcatalog.templeton.tool.JobState: void setUserArgs(java.util.Map)>(v);
label:
virtualinvoke v.<org.apache.hive.hcatalog.templeton.tool.JobState: void close()>();
goto label;
label:
v := @caughtexception;
if v == null goto label;
virtualinvoke v.<org.apache.hive.hcatalog.templeton.tool.JobState: void close()>();
label:
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public org.apache.hive.hcatalog.templeton.EnqueueBean enqueueController(java.lang.String, java.util.Map, java.lang.String, java.util.List) throws org.apache.hive.hcatalog.templeton.NotAuthorizedException, org.apache.hive.hcatalog.templeton.BusyException, java.io.IOException, org.apache.hive.hcatalog.templeton.QueueException, org.apache.hive.hcatalog.templeton.TooManyRequestsException
{
org.apache.hive.hcatalog.templeton.JobCallable v;
org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob v;
java.util.concurrent.TimeoutException v;
java.util.Map v;
java.lang.String v, v, v, v, v;
boolean v;
org.apache.hive.hcatalog.templeton.QueueException v, v, v;
org.slf4j.Logger v;
org.apache.hive.hcatalog.templeton.LauncherDelegator v;
java.util.concurrent.ExecutionException v;
java.util.List v;
org.apache.hive.hcatalog.templeton.JobRequestExecutor v, v;
java.lang.InterruptedException v;
java.lang.Object v;
v := @this: org.apache.hive.hcatalog.templeton.LauncherDelegator;
v := @parameter: java.lang.String;
v := @parameter: java.util.Map;
v := @parameter: java.lang.String;
v := @parameter: java.util.List;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob getTempletonController()>();
v = <org.apache.hive.hcatalog.templeton.LauncherDelegator: org.apache.hive.hcatalog.templeton.JobRequestExecutor jobRequest>;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.JobRequestExecutor: boolean isThreadPoolEnabled()>();
if v == 0 goto label;
v = specialinvoke v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: org.apache.hive.hcatalog.templeton.JobCallable getJobSubmitTask(java.lang.String,java.util.Map,java.lang.String,java.util.List,org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob)>(v, v, v, v, v);
label:
v = <org.apache.hive.hcatalog.templeton.LauncherDelegator: org.apache.hive.hcatalog.templeton.JobRequestExecutor jobRequest>;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.JobRequestExecutor: java.lang.Object execute(org.apache.hive.hcatalog.templeton.JobCallable)>(v);
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.hive.hcatalog.templeton.QueueException;
v = virtualinvoke v.<java.util.concurrent.TimeoutException: java.lang.String getMessage()>();
specialinvoke v.<org.apache.hive.hcatalog.templeton.QueueException: void <init>(java.lang.String)>(v);
throw v;
label:
v := @caughtexception;
v = new org.apache.hive.hcatalog.templeton.QueueException;
v = virtualinvoke v.<java.lang.InterruptedException: java.lang.String getMessage()>();
specialinvoke v.<org.apache.hive.hcatalog.templeton.QueueException: void <init>(java.lang.String)>(v);
throw v;
label:
v := @caughtexception;
v = new org.apache.hive.hcatalog.templeton.QueueException;
v = virtualinvoke v.<java.util.concurrent.ExecutionException: java.lang.String getMessage()>();
specialinvoke v.<org.apache.hive.hcatalog.templeton.QueueException: void <init>(java.lang.String)>(v);
throw v;
label:
v = <org.apache.hive.hcatalog.templeton.LauncherDelegator: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("No thread pool configured for submit job request. Executing the job request in current thread.");
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: org.apache.hive.hcatalog.templeton.EnqueueBean enqueueJob(java.lang.String,java.util.Map,java.lang.String,java.util.List,org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob)>(v, v, v, v, v);
label:
return v;
catch java.util.concurrent.TimeoutException from label to label with label;
catch java.lang.InterruptedException from label to label with label;
catch java.util.concurrent.ExecutionException from label to label with label;
}
private org.apache.hive.hcatalog.templeton.JobCallable getJobSubmitTask(java.lang.String, java.util.Map, java.lang.String, java.util.List, org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob)
{
java.util.List v;
java.util.Map v;
org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob v;
org.apache.hive.hcatalog.templeton.LauncherDelegator v;
java.lang.String v, v;
org.apache.hive.hcatalog.templeton.LauncherDelegator$1 v;
v := @this: org.apache.hive.hcatalog.templeton.LauncherDelegator;
v := @parameter: java.lang.String;
v := @parameter: java.util.Map;
v := @parameter: java.lang.String;
v := @parameter: java.util.List;
v := @parameter: org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob;
v = new org.apache.hive.hcatalog.templeton.LauncherDelegator$1;
specialinvoke v.<org.apache.hive.hcatalog.templeton.LauncherDelegator$1: void <init>(org.apache.hive.hcatalog.templeton.LauncherDelegator,java.lang.String,java.util.Map,java.lang.String,java.util.List,org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob)>(v, v, v, v, v, v);
return v;
}
public org.apache.hive.hcatalog.templeton.EnqueueBean enqueueJob(java.lang.String, java.util.Map, java.lang.String, java.util.List, org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob) throws org.apache.hive.hcatalog.templeton.NotAuthorizedException, org.apache.hive.hcatalog.templeton.BusyException, java.io.IOException, org.apache.hive.hcatalog.templeton.QueueException
{
java.lang.Throwable v;
org.apache.hive.hcatalog.templeton.EnqueueBean v;
org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob v;
long v, v, v, v;
org.apache.hadoop.security.UserGroupInformation v;
java.util.Map v;
java.lang.String v, v, v, v, v;
org.apache.hive.hcatalog.templeton.QueueException v, v;
org.slf4j.Logger v;
org.apache.hive.hcatalog.templeton.LauncherDelegator v;
java.util.List v;
java.lang.InterruptedException v;
v := @this: org.apache.hive.hcatalog.templeton.LauncherDelegator;
v := @parameter: java.lang.String;
v := @parameter: java.util.Map;
v := @parameter: java.lang.String;
v := @parameter: java.util.List;
v := @parameter: org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob;
v = null;
label:
v = staticinvoke <org.apache.hive.hcatalog.templeton.UgiFactory: org.apache.hadoop.security.UserGroupInformation getUgi(java.lang.String)>(v);
v = staticinvoke <java.lang.System: long nanoTime()>();
v = specialinvoke v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: java.lang.String queueAsUser(org.apache.hadoop.security.UserGroupInformation,java.util.List,org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob)>(v, v, v);
v = staticinvoke <java.lang.System: long nanoTime()>();
v = v - v;
v = v / 1000000L;
v = <org.apache.hive.hcatalog.templeton.LauncherDelegator: org.slf4j.Logger LOG>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,long)>(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[])>("queued job \u in \u ms");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.hive.hcatalog.templeton.QueueException;
specialinvoke v.<org.apache.hive.hcatalog.templeton.QueueException: void <init>(java.lang.String)>("Unable to get job id");
throw v;
label:
virtualinvoke v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: void registerJob(java.lang.String,java.lang.String,java.lang.String,java.util.Map)>(v, v, v, v);
v = new org.apache.hive.hcatalog.templeton.EnqueueBean;
specialinvoke v.<org.apache.hive.hcatalog.templeton.EnqueueBean: void <init>(java.lang.String)>(v);
label:
if v == null goto label;
staticinvoke <org.apache.hadoop.fs.FileSystem: void closeAllForUGI(org.apache.hadoop.security.UserGroupInformation)>(v);
label:
return v;
label:
v := @caughtexception;
v = new org.apache.hive.hcatalog.templeton.QueueException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.InterruptedException)>(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[])>("Unable to launch job \u0001");
specialinvoke v.<org.apache.hive.hcatalog.templeton.QueueException: void <init>(java.lang.String)>(v);
throw v;
label:
v := @caughtexception;
if v == null goto label;
staticinvoke <org.apache.hadoop.fs.FileSystem: void closeAllForUGI(org.apache.hadoop.security.UserGroupInformation)>(v);
label:
throw v;
catch java.lang.InterruptedException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
private java.lang.String queueAsUser(org.apache.hadoop.security.UserGroupInformation, java.util.List, org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob) throws java.io.IOException, java.lang.InterruptedException
{
java.util.List v;
org.slf4j.Logger v;
org.apache.hadoop.security.UserGroupInformation v;
org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob v;
org.apache.hive.hcatalog.templeton.LauncherDelegator v;
org.apache.hive.hcatalog.templeton.LauncherDelegator$2 v;
java.lang.Object v;
v := @this: org.apache.hive.hcatalog.templeton.LauncherDelegator;
v := @parameter: org.apache.hadoop.security.UserGroupInformation;
v := @parameter: java.util.List;
v := @parameter: org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob;
v = <org.apache.hive.hcatalog.templeton.LauncherDelegator: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Launching job: {}", v);
v = new org.apache.hive.hcatalog.templeton.LauncherDelegator$2;
specialinvoke v.<org.apache.hive.hcatalog.templeton.LauncherDelegator$2: void <init>(org.apache.hive.hcatalog.templeton.LauncherDelegator,org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob,java.util.List)>(v, v, v);
v = virtualinvoke v.<org.apache.hadoop.security.UserGroupInformation: java.lang.Object doAs(java.security.PrivilegedExceptionAction)>(v);
return v;
}
private boolean killTempletonJobWithRetry(java.lang.String, java.lang.String)
{
int v, v, v, v, v;
java.lang.String v, v, v, v, v, v;
boolean v, v;
org.slf4j.Logger v, v, v, v, v, v;
org.apache.hive.hcatalog.templeton.LauncherDelegator v;
java.lang.Exception v;
java.lang.InterruptedException v;
v := @this: org.apache.hive.hcatalog.templeton.LauncherDelegator;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.commons.lang.StringUtils: boolean startsWith(java.lang.CharSequence,java.lang.CharSequence)>(v, "job_");
if v == 0 goto label;
v = <org.apache.hive.hcatalog.templeton.LauncherDelegator: org.slf4j.Logger LOG>;
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[])>("Started killing the job \u0001");
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
v = 0;
v = 0;
label:
v = v + 1;
virtualinvoke v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: void killJob(java.lang.String,java.lang.String)>(v, v);
v = 1;
v = <org.apache.hive.hcatalog.templeton.LauncherDelegator: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("Kill job attempt succeeded.");
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.hive.hcatalog.templeton.LauncherDelegator: org.slf4j.Logger LOG>;
v = virtualinvoke v.<java.lang.Exception: 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[])>("Failed to kill the job due to exception: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
v = <org.apache.hive.hcatalog.templeton.LauncherDelegator: org.slf4j.Logger LOG>;
v = v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: int jobTimeoutTaskRetryIntervalInSec>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int,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[])>("Waiting for \u0001s before retrying the operation. Iteration: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
label:
v = v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: int jobTimeoutTaskRetryIntervalInSec>;
v = v * 1000;
staticinvoke <java.lang.Thread: void sleep(long)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.hive.hcatalog.templeton.LauncherDelegator: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("Got interrupted while waiting for next retry.");
label:
if v != 0 goto label;
v = v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: int jobTimeoutTaskRetryCount>;
if v < v goto label;
label:
return v;
label:
v = <org.apache.hive.hcatalog.templeton.LauncherDelegator: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("Couldn\'t find a valid job id after job request is timed out.");
return 0;
catch java.lang.Exception from label to label with label;
catch java.lang.InterruptedException from label to label with label;
}
protected org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob getTempletonController()
{
org.apache.hive.hcatalog.templeton.AppConfig v;
org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob v;
org.apache.hive.hcatalog.templeton.LauncherDelegator v;
boolean v;
v := @this: org.apache.hive.hcatalog.templeton.LauncherDelegator;
v = new org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob;
v = v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: boolean secureMeatastoreAccess>;
v = v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: org.apache.hive.hcatalog.templeton.AppConfig appConf>;
specialinvoke v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: void <init>(boolean,org.apache.hive.hcatalog.templeton.AppConfig)>(v, v);
return v;
}
protected int runTempletonControllerJob(org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob, java.util.List) throws java.io.IOException, java.lang.InterruptedException, java.util.concurrent.TimeoutException, java.lang.Exception
{
java.util.List v;
java.lang.Object[] v;
org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob v;
int v, v;
org.apache.hive.hcatalog.templeton.LauncherDelegator v;
java.lang.String[] v;
v := @this: org.apache.hive.hcatalog.templeton.LauncherDelegator;
v := @parameter: org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob;
v := @parameter: java.util.List;
v = interfaceinvoke v.<java.util.List: int size()>();
v = newarray (java.lang.String)[v];
v = interfaceinvoke v.<java.util.List: java.lang.Object[] toArray(java.lang.Object[])>(v);
v = staticinvoke <org.apache.hadoop.util.ToolRunner: int run(org.apache.hadoop.util.Tool,java.lang.String[])>(v, v);
return v;
}
protected void killJob(java.lang.String, java.lang.String) throws org.apache.hive.hcatalog.templeton.NotAuthorizedException, org.apache.hive.hcatalog.templeton.BadParam, java.io.IOException, java.lang.InterruptedException
{
org.apache.hive.hcatalog.templeton.AppConfig v;
org.apache.hive.hcatalog.templeton.LauncherDelegator v;
org.apache.hive.hcatalog.templeton.DeleteDelegator v;
java.lang.String v, v;
v := @this: org.apache.hive.hcatalog.templeton.LauncherDelegator;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = new org.apache.hive.hcatalog.templeton.DeleteDelegator;
v = v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: org.apache.hive.hcatalog.templeton.AppConfig appConf>;
specialinvoke v.<org.apache.hive.hcatalog.templeton.DeleteDelegator: void <init>(org.apache.hive.hcatalog.templeton.AppConfig)>(v);
virtualinvoke v.<org.apache.hive.hcatalog.templeton.DeleteDelegator: org.apache.hive.hcatalog.templeton.QueueStatusBean run(java.lang.String,java.lang.String)>(v, v);
return;
}
public java.util.List makeLauncherArgs(org.apache.hive.hcatalog.templeton.AppConfig, java.lang.String, java.lang.String, java.util.List, boolean, java.lang.Boolean, org.apache.hive.hcatalog.templeton.LauncherDelegator$JobType)
{
java.lang.Object[] v;
long v;
java.util.ArrayList v;
java.lang.Boolean v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
boolean v, v, v;
org.apache.hive.hcatalog.templeton.LauncherDelegator v;
org.apache.hive.hcatalog.templeton.LauncherDelegator$JobType v;
java.util.List v;
org.apache.hive.hcatalog.templeton.AppConfig v;
v := @this: org.apache.hive.hcatalog.templeton.LauncherDelegator;
v := @parameter: org.apache.hive.hcatalog.templeton.AppConfig;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.util.List;
v := @parameter: boolean;
v := @parameter: java.lang.Boolean;
v := @parameter: org.apache.hive.hcatalog.templeton.LauncherDelegator$JobType;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>("-libjars");
v = newarray (java.lang.Object)[2];
v = specialinvoke v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: java.lang.String getShimLibjars()>();
v[0] = v;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: java.lang.String libJars()>();
v[1] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("%s,%s", v);
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addCacheFiles(java.util.List,org.apache.hive.hcatalog.templeton.AppConfig)>(v, v);
v = v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: java.lang.String runAs>;
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "user.name", v);
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "mapred.map.tasks.speculative.execution", "false");
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: java.lang.String controllerMRChildOpts()>();
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "mapred.child.java.opts", v);
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "templeton.statusdir", v);
v = staticinvoke <org.apache.hive.hcatalog.templeton.tool.TempletonUtils: java.lang.String encodeArray(java.util.List)>(v);
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "templeton.copy", v);
v = staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: java.lang.String makeOverrideClasspath(org.apache.hive.hcatalog.templeton.AppConfig)>(v);
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "templeton.override-classpath", v);
v = staticinvoke <java.lang.Boolean: java.lang.String toString(boolean)>(v);
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "templeton.enablelog", v);
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.LauncherDelegator$JobType: java.lang.String toString()>();
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "templeton.jobtype", v);
v = staticinvoke <java.lang.System: long currentTimeMillis()>();
v = staticinvoke <java.lang.Long: java.lang.String toString(long)>(v);
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "templeton.job.launch.time", v);
if v != null goto label;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: java.lang.String enableJobReconnectDefault()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: java.lang.String enableJobReconnectDefault()>();
v = staticinvoke <java.lang.Boolean: boolean parseBoolean(java.lang.String)>(v);
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
goto label;
label:
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(0);
label:
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
v = staticinvoke <java.lang.Boolean: java.lang.String toString(boolean)>(v);
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "templeton.enablejobreconnect", v);
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: java.lang.String hadoopQueueName()>();
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "mapred.job.queue.name", v);
specialinvoke v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: void addStorageVars(java.util.List)>(v);
specialinvoke v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: void addCompletionVars(java.util.List,java.lang.String)>(v, v);
return v;
}
private java.lang.String getShimLibjars()
{
java.lang.Throwable v;
org.apache.hadoop.hive.shims.HadoopShims$WebHCatJTShim v;
java.lang.Object[] v;
org.apache.hadoop.security.UserGroupInformation v;
org.apache.hadoop.fs.Path v, v, v;
java.lang.String v, v, v, v, v, v, v;
org.apache.hadoop.hive.shims.HadoopShims v;
org.apache.hive.hcatalog.templeton.LauncherDelegator v;
java.io.IOException v, v, v;
java.lang.RuntimeException v, v, v;
org.apache.hive.hcatalog.templeton.AppConfig v;
java.lang.Class v;
v := @this: org.apache.hive.hcatalog.templeton.LauncherDelegator;
v = null;
label:
v = staticinvoke <org.apache.hadoop.security.UserGroupInformation: org.apache.hadoop.security.UserGroupInformation getCurrentUser()>();
v = staticinvoke <org.apache.hadoop.hive.shims.ShimLoader: org.apache.hadoop.hive.shims.HadoopShims getHadoopShims()>();
v = v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: org.apache.hive.hcatalog.templeton.AppConfig appConf>;
v = interfaceinvoke v.<org.apache.hadoop.hive.shims.HadoopShims: org.apache.hadoop.hive.shims.HadoopShims$WebHCatJTShim getWebHCatShim(org.apache.hadoop.conf.Configuration,org.apache.hadoop.security.UserGroupInformation)>(v, v);
v = new org.apache.hadoop.fs.Path;
v = staticinvoke <org.apache.hive.hcatalog.templeton.tool.TempletonUtils: java.lang.String findContainingJar(java.lang.Class,java.lang.String)>(class "Lorg/apache/hadoop/hive/shims/ShimLoader;", ".*hive-shims.*");
specialinvoke v.<org.apache.hadoop.fs.Path: void <init>(java.lang.String)>(v);
v = new org.apache.hadoop.fs.Path;
v = staticinvoke <org.apache.hive.hcatalog.templeton.tool.TempletonUtils: java.lang.String findContainingJar(java.lang.Class,java.lang.String)>(class "Lorg/apache/hadoop/hive/shims/HadoopShimsSecure;", ".*hive-shims.*");
specialinvoke v.<org.apache.hadoop.fs.Path: void <init>(java.lang.String)>(v);
v = new org.apache.hadoop.fs.Path;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.hive.hcatalog.templeton.tool.TempletonUtils: java.lang.String findContainingJar(java.lang.Class,java.lang.String)>(v, ".*hive-shims.*");
specialinvoke v.<org.apache.hadoop.fs.Path: void <init>(java.lang.String)>(v);
v = newarray (java.lang.Object)[3];
v = virtualinvoke v.<org.apache.hadoop.fs.Path: java.lang.String toString()>();
v[0] = v;
v = virtualinvoke v.<org.apache.hadoop.fs.Path: java.lang.String toString()>();
v[1] = v;
v = virtualinvoke v.<org.apache.hadoop.fs.Path: java.lang.String toString()>();
v[2] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("%s,%s,%s", v);
label:
if v == null goto label;
staticinvoke <org.apache.hadoop.fs.FileSystem: void closeAllForUGI(org.apache.hadoop.security.UserGroupInformation)>(v);
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.RuntimeException;
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.String,java.lang.Throwable)>("Failed to closeAllForUGI", v);
throw v;
label:
return v;
label:
v := @caughtexception;
v = new java.lang.RuntimeException;
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.String,java.lang.Throwable)>("Failed to get shimLibJars", v);
throw v;
label:
v := @caughtexception;
label:
if v == null goto label;
staticinvoke <org.apache.hadoop.fs.FileSystem: void closeAllForUGI(org.apache.hadoop.security.UserGroupInformation)>(v);
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.RuntimeException;
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.String,java.lang.Throwable)>("Failed to closeAllForUGI", v);
throw v;
label:
throw v;
catch java.io.IOException from label to label with label;
catch java.io.IOException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.io.IOException from label to label with label;
}
private void addStorageVars(java.util.List)
{
org.apache.hive.hcatalog.templeton.LauncherDelegator v;
java.util.List v;
org.apache.hive.hcatalog.templeton.AppConfig v, v, v, v;
java.lang.String v, v, v, v;
v := @this: org.apache.hive.hcatalog.templeton.LauncherDelegator;
v := @parameter: java.util.List;
v = v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: org.apache.hive.hcatalog.templeton.AppConfig appConf>;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: java.lang.String get(java.lang.String)>("templeton.storage.class");
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "templeton.storage.class", v);
v = v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: org.apache.hive.hcatalog.templeton.AppConfig appConf>;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: java.lang.String get(java.lang.String)>("templeton.storage.root");
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "templeton.storage.root", v);
v = v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: org.apache.hive.hcatalog.templeton.AppConfig appConf>;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: java.lang.String get(java.lang.String)>("templeton.zookeeper.hosts");
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "templeton.zookeeper.hosts", v);
v = v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: org.apache.hive.hcatalog.templeton.AppConfig appConf>;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: java.lang.String get(java.lang.String)>("templeton.zookeeper.session-timeout");
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "templeton.zookeeper.session-timeout", v);
return;
}
private void addCompletionVars(java.util.List, java.lang.String)
{
java.util.List v;
org.apache.hive.hcatalog.templeton.AppConfig v, v;
org.apache.hive.hcatalog.templeton.LauncherDelegator v;
java.lang.String v, v, v;
v := @this: org.apache.hive.hcatalog.templeton.LauncherDelegator;
v := @parameter: java.util.List;
v := @parameter: java.lang.String;
v = v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: org.apache.hive.hcatalog.templeton.AppConfig appConf>;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: java.lang.String get(java.lang.String)>("templeton.callback.retry.attempts");
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "job.end.retry.attempts", v);
v = v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: org.apache.hive.hcatalog.templeton.AppConfig appConf>;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: java.lang.String get(java.lang.String)>("templeton.callback.retry.interval");
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "job.end.retry.interval", v);
staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator: void addDef(java.util.List,java.lang.String,java.lang.String)>(v, "job.end.notification.url", v);
return;
}
public static void addCacheFiles(java.util.List, org.apache.hive.hcatalog.templeton.AppConfig)
{
java.util.List v;
java.lang.String v;
org.apache.hive.hcatalog.templeton.AppConfig v;
v := @parameter: java.util.List;
v := @parameter: org.apache.hive.hcatalog.templeton.AppConfig;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: java.lang.String overrideJarsString()>();
if v == null goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("-files");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
return;
}
public static java.lang.String makeOverrideClasspath(org.apache.hive.hcatalog.templeton.AppConfig)
{
java.lang.String[] v;
java.util.ArrayList v;
org.apache.hive.hcatalog.templeton.AppConfig v;
int v, v;
org.apache.hadoop.fs.Path v;
java.lang.String v, v, v;
java.io.Serializable[] v;
v := @parameter: org.apache.hive.hcatalog.templeton.AppConfig;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: java.lang.String[] overrideJars()>();
if v != null goto label;
return null;
label:
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = new org.apache.hadoop.fs.Path;
specialinvoke v.<org.apache.hadoop.fs.Path: void <init>(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.hadoop.fs.Path: java.lang.String getName()>();
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
v = newarray (java.io.Serializable)[2];
v[0] = ":";
v[1] = v;
v = staticinvoke <org.apache.commons.lang.StringUtils: java.lang.String join(java.lang.Object[])>(v);
return v;
}
public static void addDef(java.util.List, java.lang.String, java.lang.String)
{
java.util.List v;
java.lang.String v, v, v;
v := @parameter: java.util.List;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
if v == null goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>("-D");
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=\u0001");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
return;
}
void addHiveMetaStoreTokenArg()
{
org.apache.hadoop.hive.conf.HiveConf$ConfVars v;
org.apache.hadoop.hive.conf.HiveConf v;
org.apache.hive.hcatalog.templeton.LauncherDelegator v;
boolean v;
v := @this: org.apache.hive.hcatalog.templeton.LauncherDelegator;
v = new org.apache.hadoop.hive.conf.HiveConf;
specialinvoke v.<org.apache.hadoop.hive.conf.HiveConf: void <init>()>();
v = <org.apache.hadoop.hive.conf.HiveConf$ConfVars: org.apache.hadoop.hive.conf.HiveConf$ConfVars METASTORE_USE_THRIFT_SASL>;
v = virtualinvoke v.<org.apache.hadoop.hive.conf.HiveConf: boolean getBoolVar(org.apache.hadoop.hive.conf.HiveConf$ConfVars)>(v);
if v != 0 goto label;
return;
label:
v.<org.apache.hive.hcatalog.templeton.LauncherDelegator: boolean secureMeatastoreAccess> = 1;
return;
}
static void <clinit>()
{
org.slf4j.Logger v;
org.apache.hive.hcatalog.templeton.JobRequestExecutor v;
org.apache.hive.hcatalog.templeton.JobRequestExecutor$JobRequestType v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/hive/hcatalog/templeton/LauncherDelegator;");
<org.apache.hive.hcatalog.templeton.LauncherDelegator: org.slf4j.Logger LOG> = v;
v = new org.apache.hive.hcatalog.templeton.JobRequestExecutor;
v = <org.apache.hive.hcatalog.templeton.JobRequestExecutor$JobRequestType: org.apache.hive.hcatalog.templeton.JobRequestExecutor$JobRequestType Submit>;
specialinvoke v.<org.apache.hive.hcatalog.templeton.JobRequestExecutor: void <init>(org.apache.hive.hcatalog.templeton.JobRequestExecutor$JobRequestType,java.lang.String,java.lang.String,boolean)>(v, "templeton.parallellism.job.submit", "templeton.job.submit.timeout", 0);
<org.apache.hive.hcatalog.templeton.LauncherDelegator: org.apache.hive.hcatalog.templeton.JobRequestExecutor jobRequest> = v;
return;
}
}