public class org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob extends org.apache.hadoop.conf.Configured implements org.apache.hadoop.util.Tool, org.apache.hive.hcatalog.templeton.tool.JobSubmissionConstants
{
private static final org.slf4j.Logger LOG;
private final boolean secureMetastoreAccess;
private final org.apache.hive.hcatalog.templeton.AppConfig appConf;
private org.apache.hadoop.mapreduce.Job job;
public void <init>(boolean, org.apache.hive.hcatalog.templeton.AppConfig)
{
org.apache.hadoop.conf.Configuration v;
org.apache.hive.hcatalog.templeton.AppConfig v;
org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob v;
boolean v;
v := @this: org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob;
v := @parameter: boolean;
v := @parameter: org.apache.hive.hcatalog.templeton.AppConfig;
v = new org.apache.hadoop.conf.Configuration;
specialinvoke v.<org.apache.hadoop.conf.Configuration: void <init>(org.apache.hadoop.conf.Configuration)>(v);
specialinvoke v.<org.apache.hadoop.conf.Configured: void <init>(org.apache.hadoop.conf.Configuration)>(v);
v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job> = null;
v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: boolean secureMetastoreAccess> = v;
v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hive.hcatalog.templeton.AppConfig appConf> = v;
return;
}
public java.lang.String getSubmittedId()
{
org.apache.hadoop.mapreduce.Job v, v;
org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob v;
java.lang.String v;
org.apache.hadoop.mapreduce.JobID v;
v := @this: org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob;
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job>;
if v != null goto label;
return null;
label:
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job>;
v = virtualinvoke v.<org.apache.hadoop.mapreduce.Job: org.apache.hadoop.mapreduce.JobID getJobID()>();
if v != null goto label;
return null;
label:
v = virtualinvoke v.<org.apache.hadoop.mapreduce.JobID: java.lang.String toString()>();
return v;
}
public int run(java.lang.String[]) throws java.io.IOException, java.lang.InterruptedException, java.lang.ClassNotFoundException, org.apache.thrift.TException
{
org.apache.hadoop.io.Text v, v;
org.apache.hadoop.conf.Configuration v, v;
org.apache.hadoop.security.Credentials v;
boolean v, v, v, v;
org.apache.hive.hcatalog.templeton.LauncherDelegator$JobType v, v;
org.apache.hadoop.mapreduce.Job v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.hive.hcatalog.templeton.AppConfig v, v, v;
org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob v;
java.lang.String[] v;
org.apache.hadoop.security.UserGroupInformation v;
int v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.hadoop.mapreduce.JobID v;
org.slf4j.Logger v, v, v;
org.apache.hive.hcatalog.templeton.tool.DelegationTokenCache v;
org.apache.hadoop.security.token.Token v;
org.apache.hadoop.mapred.JobConf v;
org.apache.hadoop.mapreduce.lib.output.NullOutputFormat v;
java.lang.Class v, v;
org.apache.hadoop.mapred.JobClient v;
v := @this: org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob;
v := @parameter: java.lang.String[];
v = <org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isDebugEnabled()>();
if v == 0 goto label;
v = <org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.slf4j.Logger LOG>;
v = staticinvoke <java.util.Arrays: java.lang.String toString(java.lang.Object[])>(v);
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[])>("Preparing to submit job: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.conf.Configuration getConf()>();
v = staticinvoke <org.apache.hive.hcatalog.templeton.tool.TempletonUtils: java.lang.String encodeArray(java.lang.String[])>(v);
virtualinvoke v.<org.apache.hadoop.conf.Configuration: void set(java.lang.String,java.lang.String)>("templeton.args", v);
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hive.hcatalog.templeton.AppConfig appConf>;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: java.lang.String mapperMemoryMb()>();
if v == null goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
if v == 0 goto label;
virtualinvoke v.<org.apache.hadoop.conf.Configuration: void set(java.lang.String,java.lang.String)>("mapreduce.map.memory.mb", v);
label:
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hive.hcatalog.templeton.AppConfig appConf>;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: java.lang.String amMemoryMb()>();
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
virtualinvoke v.<org.apache.hadoop.conf.Configuration: void set(java.lang.String,java.lang.String)>("yarn.app.mapreduce.am.resource.mb", v);
label:
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hive.hcatalog.templeton.AppConfig appConf>;
v = virtualinvoke v.<org.apache.hive.hcatalog.templeton.AppConfig: java.lang.String controllerAMChildOpts()>();
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
virtualinvoke v.<org.apache.hadoop.conf.Configuration: void set(java.lang.String,java.lang.String)>("yarn.app.mapreduce.am.command-opts", v);
label:
v = staticinvoke <org.apache.hadoop.security.UserGroupInformation: org.apache.hadoop.security.UserGroupInformation getCurrentUser()>();
v = virtualinvoke v.<org.apache.hadoop.security.UserGroupInformation: java.lang.String getShortUserName()>();
virtualinvoke v.<org.apache.hadoop.conf.Configuration: void set(java.lang.String,java.lang.String)>("user.name", v);
v = new org.apache.hadoop.mapreduce.Job;
specialinvoke v.<org.apache.hadoop.mapreduce.Job: void <init>(org.apache.hadoop.conf.Configuration)>(v);
v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job> = v;
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job>;
virtualinvoke v.<org.apache.hadoop.mapreduce.Job: void setJarByClass(java.lang.Class)>(class "Lorg/apache/hive/hcatalog/templeton/tool/LaunchMapper;");
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job>;
v = class "Lorg/apache/hive/hcatalog/templeton/tool/TempletonControllerJob;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
virtualinvoke v.<org.apache.hadoop.mapreduce.Job: void setJobName(java.lang.String)>(v);
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job>;
virtualinvoke v.<org.apache.hadoop.mapreduce.Job: void setMapperClass(java.lang.Class)>(class "Lorg/apache/hive/hcatalog/templeton/tool/LaunchMapper;");
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job>;
virtualinvoke v.<org.apache.hadoop.mapreduce.Job: void setMapOutputKeyClass(java.lang.Class)>(class "Lorg/apache/hadoop/io/Text;");
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job>;
virtualinvoke v.<org.apache.hadoop.mapreduce.Job: void setMapOutputValueClass(java.lang.Class)>(class "Lorg/apache/hadoop/io/Text;");
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job>;
virtualinvoke v.<org.apache.hadoop.mapreduce.Job: void setInputFormatClass(java.lang.Class)>(class "Lorg/apache/hive/hcatalog/templeton/tool/SingleInputFormat;");
v = new org.apache.hadoop.mapreduce.lib.output.NullOutputFormat;
specialinvoke v.<org.apache.hadoop.mapreduce.lib.output.NullOutputFormat: void <init>()>();
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job>;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
virtualinvoke v.<org.apache.hadoop.mapreduce.Job: void setOutputFormatClass(java.lang.Class)>(v);
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job>;
virtualinvoke v.<org.apache.hadoop.mapreduce.Job: void setNumReduceTasks(int)>(0);
v = new org.apache.hadoop.mapred.JobClient;
v = new org.apache.hadoop.mapred.JobConf;
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job>;
v = virtualinvoke v.<org.apache.hadoop.mapreduce.Job: org.apache.hadoop.conf.Configuration getConfiguration()>();
specialinvoke v.<org.apache.hadoop.mapred.JobConf: void <init>(org.apache.hadoop.conf.Configuration)>(v);
specialinvoke v.<org.apache.hadoop.mapred.JobClient: void <init>(org.apache.hadoop.mapred.JobConf)>(v);
v = staticinvoke <org.apache.hadoop.security.UserGroupInformation: boolean isSecurityEnabled()>();
if v == 0 goto label;
v = new org.apache.hadoop.io.Text;
specialinvoke v.<org.apache.hadoop.io.Text: void <init>(java.lang.String)>("mr token");
v = virtualinvoke v.<org.apache.hadoop.mapred.JobClient: org.apache.hadoop.security.token.Token getDelegationToken(org.apache.hadoop.io.Text)>(v);
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job>;
v = virtualinvoke v.<org.apache.hadoop.mapreduce.Job: org.apache.hadoop.security.Credentials getCredentials()>();
v = new org.apache.hadoop.io.Text;
specialinvoke v.<org.apache.hadoop.io.Text: void <init>(java.lang.String)>("mr token");
virtualinvoke v.<org.apache.hadoop.security.Credentials: void addToken(org.apache.hadoop.io.Text,org.apache.hadoop.security.token.Token)>(v, v);
label:
v = virtualinvoke v.<org.apache.hadoop.conf.Configuration: java.lang.String get(java.lang.String)>("templeton.jobtype");
v = staticinvoke <org.apache.hive.hcatalog.templeton.LauncherDelegator$JobType: org.apache.hive.hcatalog.templeton.LauncherDelegator$JobType valueOf(java.lang.String)>(v);
v = <org.apache.hive.hcatalog.templeton.LauncherDelegator$JobType: org.apache.hive.hcatalog.templeton.LauncherDelegator$JobType HIVE>;
if v != v goto label;
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job>;
v = specialinvoke v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: java.lang.String addToken(org.apache.hadoop.mapreduce.Job,java.lang.String,java.lang.String)>(v, v, "hive");
goto label;
label:
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job>;
v = specialinvoke v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: java.lang.String addToken(org.apache.hadoop.mapreduce.Job,java.lang.String,java.lang.String)>(v, v, "hcat");
label:
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job>;
virtualinvoke v.<org.apache.hadoop.mapreduce.Job: void submit()>();
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.apache.hadoop.mapreduce.Job job>;
v = virtualinvoke v.<org.apache.hadoop.mapreduce.Job: org.apache.hadoop.mapreduce.JobID getJobID()>();
if v == null goto label;
v = staticinvoke <org.apache.hive.hcatalog.templeton.tool.DelegationTokenCache: org.apache.hive.hcatalog.templeton.tool.DelegationTokenCache getStringFormTokenCache()>();
v = virtualinvoke v.<org.apache.hadoop.mapreduce.JobID: java.lang.String toString()>();
virtualinvoke v.<org.apache.hive.hcatalog.templeton.tool.DelegationTokenCache: java.lang.Object storeDelegationToken(java.lang.Object,java.lang.Object)>(v, v);
v = <org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.hadoop.mapreduce.JobID: java.lang.String toString()>();
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[])>("Added delegation token for jobId=\u user=\u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
return 0;
}
private java.lang.String addToken(org.apache.hadoop.mapreduce.Job, java.lang.String, java.lang.String) throws java.io.IOException, java.lang.InterruptedException, org.apache.thrift.TException
{
org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob v;
org.apache.hadoop.io.Text v;
org.apache.hadoop.security.token.Token v;
org.apache.hadoop.mapreduce.Job v;
java.lang.String v, v, v;
org.apache.hadoop.security.Credentials v;
boolean v, v;
v := @this: org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob;
v := @parameter: org.apache.hadoop.mapreduce.Job;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: boolean secureMetastoreAccess>;
if v != 0 goto label;
return null;
label:
v = new org.apache.hadoop.security.token.Token;
specialinvoke v.<org.apache.hadoop.security.token.Token: void <init>()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("hive");
if v == 0 goto label;
v = specialinvoke v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: java.lang.String buildHS2DelegationToken(java.lang.String)>(v);
goto label;
label:
v = specialinvoke v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: java.lang.String buildHcatDelegationToken(java.lang.String)>(v);
label:
virtualinvoke v.<org.apache.hadoop.security.token.Token: void decodeFromUrlString(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.hadoop.mapreduce.Job: org.apache.hadoop.security.Credentials getCredentials()>();
v = new org.apache.hadoop.io.Text;
specialinvoke v.<org.apache.hadoop.io.Text: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.apache.hadoop.security.Credentials: void addToken(org.apache.hadoop.io.Text,org.apache.hadoop.security.token.Token)>(v, v);
return v;
}
private java.lang.String buildHcatDelegationToken(java.lang.String) throws java.io.IOException, java.lang.InterruptedException, org.apache.thrift.TException
{
org.slf4j.Logger v;
org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob$1 v;
org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob v;
org.apache.hadoop.hive.conf.HiveConf v;
org.apache.hadoop.security.UserGroupInformation v, v;
java.lang.Object v;
java.lang.String v, v;
v := @this: org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob;
v := @parameter: java.lang.String;
v = new org.apache.hadoop.hive.conf.HiveConf;
specialinvoke v.<org.apache.hadoop.hive.conf.HiveConf: void <init>()>();
v = <org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: 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[])>("Creating hive metastore delegation token for user \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
v = staticinvoke <org.apache.hive.hcatalog.templeton.UgiFactory: org.apache.hadoop.security.UserGroupInformation getUgi(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.hadoop.security.UserGroupInformation: org.apache.hadoop.security.UserGroupInformation getRealUser()>();
v = new org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob$1;
specialinvoke v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob$1: void <init>(org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob,org.apache.hadoop.hive.conf.HiveConf,org.apache.hadoop.security.UserGroupInformation)>(v, v, v);
v = virtualinvoke v.<org.apache.hadoop.security.UserGroupInformation: java.lang.Object doAs(java.security.PrivilegedExceptionAction)>(v);
return v;
}
private java.lang.String buildHS2DelegationToken(java.lang.String) throws java.io.IOException, java.lang.InterruptedException, org.apache.thrift.TException
{
org.slf4j.Logger v;
org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob$2 v;
org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob v;
org.apache.hadoop.hive.conf.HiveConf v;
org.apache.hadoop.security.UserGroupInformation v, v;
java.lang.Object v;
java.lang.String v, v;
v := @this: org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob;
v := @parameter: java.lang.String;
v = new org.apache.hadoop.hive.conf.HiveConf;
specialinvoke v.<org.apache.hadoop.hive.conf.HiveConf: void <init>()>();
v = <org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: 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[])>("Creating hiveserver delegation token for user \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
v = staticinvoke <org.apache.hive.hcatalog.templeton.UgiFactory: org.apache.hadoop.security.UserGroupInformation getUgi(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.hadoop.security.UserGroupInformation: org.apache.hadoop.security.UserGroupInformation getRealUser()>();
v = new org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob$2;
specialinvoke v.<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob$2: void <init>(org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob,org.apache.hadoop.security.UserGroupInformation)>(v, v);
v = virtualinvoke v.<org.apache.hadoop.security.UserGroupInformation: java.lang.Object doAs(java.security.PrivilegedExceptionAction)>(v);
return v;
}
static void <clinit>()
{
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/hive/hcatalog/templeton/tool/TempletonControllerJob;");
<org.apache.hive.hcatalog.templeton.tool.TempletonControllerJob: org.slf4j.Logger LOG> = v;
return;
}
}