public class org.apache.hadoop.hive.metastore.utils.FileUtils extends java.lang.Object
{
private static final org.apache.hadoop.fs.PathFilter SNAPSHOT_DIR_PATH_FILTER;
private static final org.slf4j.Logger LOG;
public static final org.apache.hadoop.fs.PathFilter HIDDEN_FILES_PATH_FILTER;
private static final org.apache.hadoop.fs.PathFilter hiddenFileFilter;
private static java.util.BitSet charToEscape;
public void <init>()
{
org.apache.hadoop.hive.metastore.utils.FileUtils v;
v := @this: org.apache.hadoop.hive.metastore.utils.FileUtils;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public static boolean moveToTrash(org.apache.hadoop.fs.FileSystem, org.apache.hadoop.fs.Path, org.apache.hadoop.conf.Configuration, boolean) throws java.io.IOException
{
java.lang.Throwable v, v;
org.apache.hadoop.fs.FileSystem v;
org.apache.hadoop.conf.Configuration v;
org.apache.hadoop.fs.Path v;
java.lang.String v, v, v, v, v, v, v;
boolean v, v, v, v, v, v;
org.slf4j.Logger v, v, v, v, v;
java.io.IOException v;
v := @parameter: org.apache.hadoop.fs.FileSystem;
v := @parameter: org.apache.hadoop.fs.Path;
v := @parameter: org.apache.hadoop.conf.Configuration;
v := @parameter: boolean;
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: org.slf4j.Logger LOG>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.hadoop.fs.Path)>(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[])>("deleting  \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
label:
if v == 0 goto label;
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: org.slf4j.Logger LOG>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.hadoop.fs.Path)>(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[])>("purge is set to true. Not moving to Trash \u0001");
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>(v);
goto label;
label:
v = staticinvoke <org.apache.hadoop.fs.Trash: boolean moveToAppropriateTrash(org.apache.hadoop.fs.FileSystem,org.apache.hadoop.fs.Path,org.apache.hadoop.conf.Configuration)>(v, v, v);
if v == 0 goto label;
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: org.slf4j.Logger LOG>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.hadoop.fs.Path)>(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[])>("Moved to trash: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void trace(java.lang.String)>(v);
label:
return 1;
label:
v := @caughtexception;
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: org.slf4j.Logger LOG>;
v = virtualinvoke v.<java.io.IOException: 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[])>("\u; Force to delete it.");
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: boolean delete(org.apache.hadoop.fs.Path,boolean)>(v, 1);
label:
goto label;
label:
v := @caughtexception;
v = v instanceof org.apache.hadoop.hdfs.protocol.SnapshotException;
if v != 0 goto label;
v = virtualinvoke v.<java.io.IOException: java.lang.Throwable getCause()>();
v = v instanceof org.apache.hadoop.hdfs.protocol.SnapshotException;
if v != 0 goto label;
v = virtualinvoke v.<java.io.IOException: java.lang.String getMessage()>();
v = virtualinvoke v.<java.lang.String: boolean contains(java.lang.CharSequence)>("Snapshot");
if v == 0 goto label;
label:
staticinvoke <org.apache.hadoop.hive.metastore.utils.FileUtils: void deleteReplRelatedSnapshots(org.apache.hadoop.fs.FileSystem,org.apache.hadoop.fs.Path)>(v, v);
label:
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: boolean delete(org.apache.hadoop.fs.Path,boolean)>(v, 1);
label:
if v != 0 goto label;
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: org.slf4j.Logger LOG>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.hadoop.fs.Path)>(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 delete \u0001");
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String)>(v);
label:
return v;
catch java.io.IOException from label to label with label;
catch org.apache.hadoop.ipc.RemoteException from label to label with label;
catch org.apache.hadoop.hdfs.protocol.SnapshotException from label to label with label;
}
private static void deleteReplRelatedSnapshots(org.apache.hadoop.fs.FileSystem, org.apache.hadoop.fs.Path)
{
org.apache.hadoop.fs.FileSystem v;
org.apache.hadoop.fs.FileStatus v;
int v, v;
org.apache.hadoop.fs.Path v, v, v, v, v;
java.lang.String v, v, v;
boolean v, v;
org.apache.hadoop.fs.FileStatus[] v;
org.slf4j.Logger v;
java.lang.Exception v;
v := @parameter: org.apache.hadoop.fs.FileSystem;
v := @parameter: org.apache.hadoop.fs.Path;
label:
v = new org.apache.hadoop.fs.Path;
specialinvoke v.<org.apache.hadoop.fs.Path: void <init>(org.apache.hadoop.fs.Path,java.lang.String)>(v, ".snapshot");
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: org.apache.hadoop.fs.FileStatus[] listStatus(org.apache.hadoop.fs.Path)>(v);
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<org.apache.hadoop.fs.FileStatus: org.apache.hadoop.fs.Path getPath()>();
v = virtualinvoke v.<org.apache.hadoop.fs.Path: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("replOld");
if v != 0 goto label;
v = virtualinvoke v.<org.apache.hadoop.fs.FileStatus: org.apache.hadoop.fs.Path getPath()>();
v = virtualinvoke v.<org.apache.hadoop.fs.Path: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("replNew");
if v == 0 goto label;
label:
v = virtualinvoke v.<org.apache.hadoop.fs.FileStatus: org.apache.hadoop.fs.Path getPath()>();
v = virtualinvoke v.<org.apache.hadoop.fs.Path: java.lang.String getName()>();
virtualinvoke v.<org.apache.hadoop.hdfs.DistributedFileSystem: void deleteSnapshot(org.apache.hadoop.fs.Path,java.lang.String)>(v, v);
label:
v = v + 1;
goto label;
label:
v := @caughtexception;
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>("Couldn\'t clean up replication related snapshots", v);
label:
return;
catch java.lang.Exception from label to label with label;
}
public static boolean copy(org.apache.hadoop.fs.FileSystem, org.apache.hadoop.fs.Path, org.apache.hadoop.fs.FileSystem, org.apache.hadoop.fs.Path, boolean, boolean, org.apache.hadoop.conf.Configuration) throws java.io.IOException
{
org.apache.hadoop.fs.FileSystem v, v;
byte v, v;
org.apache.hadoop.conf.Configuration v;
org.apache.hadoop.fs.Path v, v;
org.apache.hadoop.hive.metastore.conf.MetastoreConf$ConfVars v, v, v, v;
java.net.URI v;
boolean v, v, v, v, v;
java.util.List v;
long v, v, v, v, v, v, v, v;
org.apache.hadoop.fs.ContentSummary v;
java.lang.String v, v, v;
org.slf4j.Logger v, v, v;
v := @parameter: org.apache.hadoop.fs.FileSystem;
v := @parameter: org.apache.hadoop.fs.Path;
v := @parameter: org.apache.hadoop.fs.FileSystem;
v := @parameter: org.apache.hadoop.fs.Path;
v := @parameter: boolean;
v := @parameter: boolean;
v := @parameter: org.apache.hadoop.conf.Configuration;
v = 0;
v = 0;
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: java.net.URI getUri()>();
v = virtualinvoke v.<java.net.URI: java.lang.String getScheme()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("hdfs");
if v == 0 goto label;
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: org.apache.hadoop.fs.ContentSummary getContentSummary(org.apache.hadoop.fs.Path)>(v);
v = virtualinvoke v.<org.apache.hadoop.fs.ContentSummary: long getFileCount()>();
v = <org.apache.hadoop.hive.metastore.conf.MetastoreConf$ConfVars: org.apache.hadoop.hive.metastore.conf.MetastoreConf$ConfVars REPL_COPYFILE_MAXNUMFILES>;
v = staticinvoke <org.apache.hadoop.hive.metastore.conf.MetastoreConf: long getLongVar(org.apache.hadoop.conf.Configuration,org.apache.hadoop.hive.metastore.conf.MetastoreConf$ConfVars)>(v, v);
v = v cmp v;
if v <= 0 goto label;
v = virtualinvoke v.<org.apache.hadoop.fs.ContentSummary: long getLength()>();
v = <org.apache.hadoop.hive.metastore.conf.MetastoreConf$ConfVars: org.apache.hadoop.hive.metastore.conf.MetastoreConf$ConfVars REPL_COPYFILE_MAXSIZE>;
v = staticinvoke <org.apache.hadoop.hive.metastore.conf.MetastoreConf: long getLongVar(org.apache.hadoop.conf.Configuration,org.apache.hadoop.hive.metastore.conf.MetastoreConf$ConfVars)>(v, v);
v = v cmp v;
if v <= 0 goto label;
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.hadoop.fs.ContentSummary: long getLength()>();
v = <org.apache.hadoop.hive.metastore.conf.MetastoreConf$ConfVars: org.apache.hadoop.hive.metastore.conf.MetastoreConf$ConfVars REPL_COPYFILE_MAXSIZE>;
v = staticinvoke <org.apache.hadoop.hive.metastore.conf.MetastoreConf: long getLongVar(org.apache.hadoop.conf.Configuration,org.apache.hadoop.hive.metastore.conf.MetastoreConf$ConfVars)>(v, v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (long,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[])>("Source is \u bytes. (MAX: \u)");
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.hadoop.fs.ContentSummary: long getFileCount()>();
v = <org.apache.hadoop.hive.metastore.conf.MetastoreConf$ConfVars: org.apache.hadoop.hive.metastore.conf.MetastoreConf$ConfVars REPL_COPYFILE_MAXNUMFILES>;
v = staticinvoke <org.apache.hadoop.hive.metastore.conf.MetastoreConf: long getLongVar(org.apache.hadoop.conf.Configuration,org.apache.hadoop.hive.metastore.conf.MetastoreConf$ConfVars)>(v, v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (long,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[])>("Source is \u files. (MAX: \u)");
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("Launch distributed copy (distcp) job.");
v = 1;
v = staticinvoke <java.util.Collections: java.util.List singletonList(java.lang.Object)>(v);
v = staticinvoke <org.apache.hadoop.hive.metastore.utils.FileUtils: boolean distCp(org.apache.hadoop.fs.FileSystem,java.util.List,org.apache.hadoop.fs.Path,boolean,java.lang.String,org.apache.hadoop.conf.Configuration)>(v, v, v, v, null, v);
label:
if v != 0 goto label;
v = staticinvoke <org.apache.hadoop.fs.FileUtil: boolean copy(org.apache.hadoop.fs.FileSystem,org.apache.hadoop.fs.Path,org.apache.hadoop.fs.FileSystem,org.apache.hadoop.fs.Path,boolean,boolean,org.apache.hadoop.conf.Configuration)>(v, v, v, v, v, v, v);
label:
return v;
}
private static boolean distCp(org.apache.hadoop.fs.FileSystem, java.util.List, org.apache.hadoop.fs.Path, boolean, java.lang.String, org.apache.hadoop.conf.Configuration) throws java.io.IOException
{
java.util.Iterator v;
org.apache.hadoop.fs.FileSystem v;
java.util.List v;
org.apache.hadoop.conf.Configuration v;
org.apache.hadoop.fs.Path v;
java.lang.Object v;
java.lang.String v;
boolean v, v, v;
v := @parameter: org.apache.hadoop.fs.FileSystem;
v := @parameter: java.util.List;
v := @parameter: org.apache.hadoop.fs.Path;
v := @parameter: boolean;
v := @parameter: java.lang.String;
v := @parameter: org.apache.hadoop.conf.Configuration;
if v != null goto label;
v = staticinvoke <org.apache.hadoop.hive.metastore.utils.HdfsUtils: boolean runDistCp(java.util.List,org.apache.hadoop.fs.Path,org.apache.hadoop.conf.Configuration)>(v, v, v);
goto label;
label:
v = staticinvoke <org.apache.hadoop.hive.metastore.utils.HdfsUtils: boolean runDistCpAs(java.util.List,org.apache.hadoop.fs.Path,org.apache.hadoop.conf.Configuration,java.lang.String)>(v, v, v, v);
label:
if v == 0 goto label;
if v == 0 goto label;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
virtualinvoke v.<org.apache.hadoop.fs.FileSystem: boolean delete(org.apache.hadoop.fs.Path,boolean)>(v, 1);
goto label;
label:
return v;
}
public static boolean mkdir(org.apache.hadoop.fs.FileSystem, org.apache.hadoop.fs.Path) throws java.io.IOException
{
org.slf4j.Logger v;
org.apache.hadoop.fs.FileSystem v;
org.apache.hadoop.fs.Path v;
java.lang.String v;
boolean v;
v := @parameter: org.apache.hadoop.fs.FileSystem;
v := @parameter: org.apache.hadoop.fs.Path;
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: org.slf4j.Logger LOG>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.hadoop.fs.Path)>(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 directory if it doesn\'t exist: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: boolean mkdirs(org.apache.hadoop.fs.Path)>(v);
return v;
}
public static boolean rename(org.apache.hadoop.fs.FileSystem, org.apache.hadoop.fs.FileSystem, org.apache.hadoop.fs.Path, org.apache.hadoop.fs.Path) throws java.io.IOException
{
org.slf4j.Logger v;
org.apache.hadoop.fs.FileSystem v, v;
java.io.IOException v;
org.apache.hadoop.conf.Configuration v;
org.apache.hadoop.fs.Path v, v;
java.lang.String v;
boolean v, v, v, v;
v := @parameter: org.apache.hadoop.fs.FileSystem;
v := @parameter: org.apache.hadoop.fs.FileSystem;
v := @parameter: org.apache.hadoop.fs.Path;
v := @parameter: org.apache.hadoop.fs.Path;
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: org.slf4j.Logger LOG>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.hadoop.fs.Path,org.apache.hadoop.fs.Path)>(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[])>("Renaming \u to \u0001");
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: boolean exists(org.apache.hadoop.fs.Path)>(v);
if v == 0 goto label;
v = new java.io.IOException;
specialinvoke v.<java.io.IOException: void <init>(java.lang.String)>("Cannot rename the source path. The destination path already exists.");
throw v;
label:
v = staticinvoke <org.apache.hadoop.hive.metastore.utils.FileUtils: boolean equalsFileSystem(org.apache.hadoop.fs.FileSystem,org.apache.hadoop.fs.FileSystem)>(v, v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: boolean rename(org.apache.hadoop.fs.Path,org.apache.hadoop.fs.Path)>(v, v);
return v;
label:
v = new org.apache.hadoop.conf.Configuration;
specialinvoke v.<org.apache.hadoop.conf.Configuration: void <init>()>();
v = staticinvoke <org.apache.hadoop.hive.metastore.utils.FileUtils: boolean copy(org.apache.hadoop.fs.FileSystem,org.apache.hadoop.fs.Path,org.apache.hadoop.fs.FileSystem,org.apache.hadoop.fs.Path,boolean,boolean,org.apache.hadoop.conf.Configuration)>(v, v, v, v, 1, 0, v);
return v;
}
private static boolean needsEscaping(char)
{
int v;
char v;
java.util.BitSet v, v;
boolean v, v;
v := @parameter: char;
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: java.util.BitSet charToEscape>;
v = virtualinvoke v.<java.util.BitSet: int size()>();
if v >= v goto label;
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: java.util.BitSet charToEscape>;
v = virtualinvoke v.<java.util.BitSet: boolean get(int)>(v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static java.lang.String escapePathName(java.lang.String)
{
java.lang.String v, v;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.hadoop.hive.metastore.utils.FileUtils: java.lang.String escapePathName(java.lang.String,java.lang.String)>(v, null);
return v;
}
public static java.lang.String escapePathName(java.lang.String, java.lang.String)
{
java.lang.Object[] v;
char v;
java.lang.Integer v;
int v, v, v;
java.lang.StringBuilder v;
java.lang.String v, v, v, v;
boolean v;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
if v == null goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
if v != 0 goto label;
label:
if v != null goto label;
return "__HIVE_DEFAULT_PARTITION__";
label:
return v;
label:
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = 0;
label:
v = virtualinvoke v.<java.lang.String: int length()>();
if v >= v goto label;
v = virtualinvoke v.<java.lang.String: char charAt(int)>(v);
v = staticinvoke <org.apache.hadoop.hive.metastore.utils.FileUtils: boolean needsEscaping(char)>(v);
if v == 0 goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(37);
v = newarray (java.lang.Object)[1];
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[0] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("%1$02X", v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
goto label;
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(v);
label:
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
public static java.lang.String unescapePathName(java.lang.String)
{
char v;
java.lang.Exception v;
int v, v, v, v, v, v, v, v;
java.lang.StringBuilder v;
java.lang.String v, v, v;
v := @parameter: java.lang.String;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = 0;
label:
v = virtualinvoke v.<java.lang.String: int length()>();
if v >= v goto label;
v = virtualinvoke v.<java.lang.String: char charAt(int)>(v);
if v != 37 goto label;
v = v + 2;
v = virtualinvoke v.<java.lang.String: int length()>();
if v >= v goto label;
label:
v = v + 1;
v = v + 3;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(v, v);
v = staticinvoke <java.lang.Integer: int parseInt(java.lang.String,int)>(v, 16);
label:
goto label;
label:
v := @caughtexception;
v = (int) -1;
v = v;
label:
if v < 0 goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(v);
v = v + 2;
goto label;
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(v);
label:
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
catch java.lang.Exception from label to label with label;
}
public static java.util.List getFileStatusRecurse(org.apache.hadoop.fs.Path, org.apache.hadoop.fs.FileSystem)
{
java.util.List v;
org.apache.hadoop.fs.FileSystem v;
org.apache.hadoop.fs.Path v;
java.io.IOException v;
org.apache.hadoop.fs.FileStatus v;
boolean v;
java.util.ArrayList v;
v := @parameter: org.apache.hadoop.fs.Path;
v := @parameter: org.apache.hadoop.fs.FileSystem;
label:
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = staticinvoke <org.apache.hadoop.hive.metastore.utils.FileUtils: boolean isS3a(org.apache.hadoop.fs.FileSystem)>(v);
if v == 0 goto label;
staticinvoke <org.apache.hadoop.hive.metastore.utils.FileUtils: void listS3FilesRecursive(org.apache.hadoop.fs.Path,org.apache.hadoop.fs.FileSystem,java.util.List)>(v, v, v);
goto label;
label:
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: org.apache.hadoop.fs.FileStatus getFileStatus(org.apache.hadoop.fs.Path)>(v);
staticinvoke <org.apache.hadoop.hive.metastore.utils.FileUtils: void listStatusRecursively(org.apache.hadoop.fs.FileSystem,org.apache.hadoop.fs.FileStatus,java.util.List)>(v, v, v);
label:
return v;
label:
v := @caughtexception;
v = staticinvoke <java.util.Collections: java.util.List emptyList()>();
return v;
catch java.io.IOException from label to label with label;
}
private static void listStatusRecursively(org.apache.hadoop.fs.FileSystem, org.apache.hadoop.fs.FileStatus, java.util.List) throws java.io.IOException
{
org.apache.hadoop.fs.FileStatus[] v;
org.apache.hadoop.fs.FileSystem v;
org.apache.hadoop.fs.PathFilter v;
org.apache.hadoop.fs.FileStatus v, v;
java.util.List v;
int v, v;
org.apache.hadoop.fs.Path v;
boolean v;
v := @parameter: org.apache.hadoop.fs.FileSystem;
v := @parameter: org.apache.hadoop.fs.FileStatus;
v := @parameter: java.util.List;
v = virtualinvoke v.<org.apache.hadoop.fs.FileStatus: boolean isDir()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.hadoop.fs.FileStatus: org.apache.hadoop.fs.Path getPath()>();
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: org.apache.hadoop.fs.PathFilter HIDDEN_FILES_PATH_FILTER>;
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: org.apache.hadoop.fs.FileStatus[] listStatus(org.apache.hadoop.fs.Path,org.apache.hadoop.fs.PathFilter)>(v, v);
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
staticinvoke <org.apache.hadoop.hive.metastore.utils.FileUtils: void listStatusRecursively(org.apache.hadoop.fs.FileSystem,org.apache.hadoop.fs.FileStatus,java.util.List)>(v, v, v);
v = v + 1;
goto label;
label:
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
return;
}
private static void listS3FilesRecursive(org.apache.hadoop.fs.Path, org.apache.hadoop.fs.FileSystem, java.util.List) throws java.io.IOException
{
org.apache.hadoop.fs.FileSystem v;
org.apache.hadoop.fs.PathFilter v;
java.util.List v;
org.apache.hadoop.fs.Path v, v, v;
java.lang.Object v;
org.apache.hadoop.fs.RemoteIterator v;
boolean v, v;
v := @parameter: org.apache.hadoop.fs.Path;
v := @parameter: org.apache.hadoop.fs.FileSystem;
v := @parameter: java.util.List;
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: org.apache.hadoop.fs.RemoteIterator listFiles(org.apache.hadoop.fs.Path,boolean)>(v, 1);
label:
v = interfaceinvoke v.<org.apache.hadoop.fs.RemoteIterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.hadoop.fs.RemoteIterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.hadoop.fs.LocatedFileStatus: org.apache.hadoop.fs.Path getPath()>();
v = staticinvoke <org.apache.hadoop.hive.metastore.utils.FileUtils: org.apache.hadoop.fs.Path makeRelative(org.apache.hadoop.fs.Path,org.apache.hadoop.fs.Path)>(v, v);
v = <org.apache.hadoop.hive.metastore.utils.FileUtils$RemoteIteratorWithFilter: org.apache.hadoop.fs.PathFilter HIDDEN_FILES_FULL_PATH_FILTER>;
v = interfaceinvoke v.<org.apache.hadoop.fs.PathFilter: boolean accept(org.apache.hadoop.fs.Path)>(v);
if v == 0 goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
return;
}
public static org.apache.hadoop.fs.Path makeRelative(org.apache.hadoop.fs.Path, org.apache.hadoop.fs.Path)
{
org.apache.hadoop.fs.Path v, v, v;
java.lang.String v, v, v, v, v, v, v, v;
boolean v, v;
v := @parameter: org.apache.hadoop.fs.Path;
v := @parameter: org.apache.hadoop.fs.Path;
v = virtualinvoke v.<org.apache.hadoop.fs.Path: java.lang.String toString()>();
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("/");
if v == 0 goto label;
v = virtualinvoke v.<org.apache.hadoop.fs.Path: java.lang.String toString()>();
goto label;
label:
v = virtualinvoke v.<org.apache.hadoop.fs.Path: 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[])>("\u0001/");
label:
v = v;
v = virtualinvoke v.<org.apache.hadoop.fs.Path: java.lang.String toString()>();
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("/");
if v == 0 goto label;
v = virtualinvoke v.<org.apache.hadoop.fs.Path: java.lang.String toString()>();
goto label;
label:
v = virtualinvoke v.<org.apache.hadoop.fs.Path: 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[])>("\u0001/");
label:
v = new org.apache.hadoop.fs.Path;
v = virtualinvoke v.<java.lang.String: java.lang.String replaceFirst(java.lang.String,java.lang.String)>(v, "");
specialinvoke v.<org.apache.hadoop.fs.Path: void <init>(java.lang.String)>(v);
return v;
}
public static boolean isS3a(org.apache.hadoop.fs.FileSystem)
{
java.lang.UnsupportedOperationException v;
org.apache.hadoop.fs.FileSystem v;
java.lang.String v, v;
boolean v;
v := @parameter: org.apache.hadoop.fs.FileSystem;
label:
v = "s3a";
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: java.lang.String getScheme()>();
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>(v);
label:
return v;
label:
v := @caughtexception;
return 0;
catch java.lang.UnsupportedOperationException from label to label with label;
}
public static java.lang.String makePartName(java.util.List, java.util.List)
{
java.util.List v, v;
java.lang.String v;
v := @parameter: java.util.List;
v := @parameter: java.util.List;
v = staticinvoke <org.apache.hadoop.hive.metastore.utils.FileUtils: java.lang.String makePartName(java.util.List,java.util.List,java.lang.String)>(v, v, null);
return v;
}
public static java.lang.String makePartName(java.util.List, java.util.List, java.lang.String)
{
java.util.List v, v;
int v, v;
java.lang.Object v, v;
java.lang.StringBuilder v;
java.lang.String v, v, v, v, v;
v := @parameter: java.util.List;
v := @parameter: java.util.List;
v := @parameter: java.lang.String;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = 0;
label:
v = interfaceinvoke v.<java.util.List: int size()>();
if v >= v goto label;
if v <= 0 goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("/");
label:
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
v = staticinvoke <org.apache.hadoop.hive.metastore.utils.FileUtils: java.lang.String escapePathName(java.lang.String,java.lang.String)>(v, v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(61);
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = staticinvoke <org.apache.hadoop.hive.metastore.utils.FileUtils: java.lang.String escapePathName(java.lang.String,java.lang.String)>(v, v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
public static boolean equalsFileSystem(org.apache.hadoop.fs.FileSystem, org.apache.hadoop.fs.FileSystem)
{
org.apache.hadoop.fs.FileSystem v, v;
java.net.URI v, v;
boolean v;
v := @parameter: org.apache.hadoop.fs.FileSystem;
v := @parameter: org.apache.hadoop.fs.FileSystem;
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: java.net.URI getUri()>();
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: java.net.URI getUri()>();
v = virtualinvoke v.<java.net.URI: boolean equals(java.lang.Object)>(v);
return v;
}
public static boolean pathHasSnapshotSubDir(org.apache.hadoop.fs.Path, org.apache.hadoop.fs.FileSystem) throws java.io.IOException
{
org.apache.hadoop.fs.FileStatus[] v;
org.apache.hadoop.fs.FileSystem v;
int v;
org.apache.hadoop.fs.Path v;
org.apache.hadoop.fs.PathFilter v;
boolean v;
v := @parameter: org.apache.hadoop.fs.Path;
v := @parameter: org.apache.hadoop.fs.FileSystem;
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: org.apache.hadoop.fs.PathFilter SNAPSHOT_DIR_PATH_FILTER>;
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: org.apache.hadoop.fs.FileStatus[] listStatus(org.apache.hadoop.fs.Path,org.apache.hadoop.fs.PathFilter)>(v, v);
if v == null goto label;
v = lengthof v;
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static void makeDir(org.apache.hadoop.fs.Path, org.apache.hadoop.conf.Configuration) throws org.apache.hadoop.hive.metastore.api.MetaException
{
org.apache.hadoop.hive.metastore.api.MetaException v;
org.apache.hadoop.fs.FileSystem v;
org.apache.hadoop.conf.Configuration v;
org.apache.hadoop.fs.Path v;
java.io.IOException v;
java.lang.String v;
boolean v;
v := @parameter: org.apache.hadoop.fs.Path;
v := @parameter: org.apache.hadoop.conf.Configuration;
label:
v = virtualinvoke v.<org.apache.hadoop.fs.Path: org.apache.hadoop.fs.FileSystem getFileSystem(org.apache.hadoop.conf.Configuration)>(v);
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: boolean exists(org.apache.hadoop.fs.Path)>(v);
if v != 0 goto label;
virtualinvoke v.<org.apache.hadoop.fs.FileSystem: boolean mkdirs(org.apache.hadoop.fs.Path)>(v);
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.hadoop.hive.metastore.api.MetaException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.hadoop.fs.Path)>(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 : \u0001");
specialinvoke v.<org.apache.hadoop.hive.metastore.api.MetaException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
catch java.io.IOException from label to label with label;
}
public static boolean isDirEmpty(org.apache.hadoop.fs.FileSystem, org.apache.hadoop.fs.Path) throws java.io.IOException
{
org.apache.hadoop.fs.FileStatus[] v;
org.apache.hadoop.fs.FileSystem v;
int v;
org.apache.hadoop.fs.Path v, v;
org.apache.hadoop.fs.PathFilter v;
boolean v;
v := @parameter: org.apache.hadoop.fs.FileSystem;
v := @parameter: org.apache.hadoop.fs.Path;
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: boolean exists(org.apache.hadoop.fs.Path)>(v);
if v == 0 goto label;
v = new org.apache.hadoop.fs.Path;
specialinvoke v.<org.apache.hadoop.fs.Path: void <init>(org.apache.hadoop.fs.Path,java.lang.String)>(v, "*");
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: org.apache.hadoop.fs.PathFilter hiddenFileFilter>;
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: org.apache.hadoop.fs.FileStatus[] globStatus(org.apache.hadoop.fs.Path,org.apache.hadoop.fs.PathFilter)>(v, v);
v = lengthof v;
if v <= 0 goto label;
return 0;
label:
return 1;
}
public static org.apache.hadoop.fs.Path makeQualified(org.apache.hadoop.fs.Path, org.apache.hadoop.conf.Configuration) throws java.io.IOException
{
org.apache.hadoop.fs.FileSystem v;
org.apache.hadoop.conf.Configuration v;
org.apache.hadoop.fs.Path v, v, v, v;
java.lang.String v, v, v, v, v;
java.net.URI v, v, v;
boolean v, v;
v := @parameter: org.apache.hadoop.fs.Path;
v := @parameter: org.apache.hadoop.conf.Configuration;
v = virtualinvoke v.<org.apache.hadoop.fs.Path: boolean isAbsolute()>();
if v != 0 goto label;
v = staticinvoke <org.apache.hadoop.fs.FileSystem: org.apache.hadoop.fs.FileSystem get(org.apache.hadoop.conf.Configuration)>(v);
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: java.net.URI getUri()>();
v = virtualinvoke v.<org.apache.hadoop.fs.FileSystem: org.apache.hadoop.fs.Path getWorkingDirectory()>();
v = virtualinvoke v.<org.apache.hadoop.fs.Path: org.apache.hadoop.fs.Path makeQualified(java.net.URI,org.apache.hadoop.fs.Path)>(v, v);
return v;
label:
v = staticinvoke <org.apache.hadoop.fs.FileSystem: java.net.URI getDefaultUri(org.apache.hadoop.conf.Configuration)>(v);
v = virtualinvoke v.<org.apache.hadoop.fs.Path: java.net.URI toUri()>();
v = virtualinvoke v.<java.net.URI: java.lang.String getScheme()>();
v = virtualinvoke v.<java.net.URI: java.lang.String getAuthority()>();
if v != null goto label;
v = virtualinvoke v.<java.net.URI: java.lang.String getScheme()>();
v = virtualinvoke v.<java.net.URI: java.lang.String getAuthority()>();
if v != null goto label;
v = "";
goto label;
label:
if v != null goto label;
v = virtualinvoke v.<java.net.URI: java.lang.String getScheme()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.net.URI: java.lang.String getAuthority()>();
if v == null goto label;
v = virtualinvoke v.<java.net.URI: java.lang.String getAuthority()>();
goto label;
label:
v = "";
label:
v = new org.apache.hadoop.fs.Path;
v = virtualinvoke v.<java.net.URI: java.lang.String getPath()>();
specialinvoke v.<org.apache.hadoop.fs.Path: void <init>(java.lang.String,java.lang.String,java.lang.String)>(v, v, v);
return v;
}
public static boolean isSubdirectory(java.lang.String, java.lang.String)
{
java.lang.String v, v, v;
boolean v, v;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("/");
if v == 0 goto label;
v = v;
goto label;
label:
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[])>("\u0001/");
label:
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>(v);
return v;
}
public static org.apache.hadoop.fs.Path getTransformedPath(java.lang.String, java.lang.String, java.lang.String)
{
org.apache.hadoop.fs.Path v, v, v, v;
java.lang.String v, v, v;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
if v == null goto label;
v = new org.apache.hadoop.fs.Path;
specialinvoke v.<org.apache.hadoop.fs.Path: void <init>(java.lang.String)>(v);
v = v;
if v == null goto label;
v = new org.apache.hadoop.fs.Path;
specialinvoke v.<org.apache.hadoop.fs.Path: void <init>(org.apache.hadoop.fs.Path,java.lang.String)>(v, v);
v = v;
label:
v = new org.apache.hadoop.fs.Path;
specialinvoke v.<org.apache.hadoop.fs.Path: void <init>(org.apache.hadoop.fs.Path,java.lang.String)>(v, v);
return v;
label:
return null;
}
static void <clinit>()
{
org.slf4j.Logger v;
org.apache.hadoop.hive.metastore.utils.FileUtils$3 v;
org.apache.hadoop.hive.metastore.utils.FileUtils$2 v;
org.apache.hadoop.hive.metastore.utils.FileUtils$1 v;
java.util.BitSet v, v;
v = new org.apache.hadoop.hive.metastore.utils.FileUtils$1;
specialinvoke v.<org.apache.hadoop.hive.metastore.utils.FileUtils$1: void <init>()>();
<org.apache.hadoop.hive.metastore.utils.FileUtils: org.apache.hadoop.fs.PathFilter SNAPSHOT_DIR_PATH_FILTER> = v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/hadoop/hive/metastore/utils/FileUtils;");
<org.apache.hadoop.hive.metastore.utils.FileUtils: org.slf4j.Logger LOG> = v;
v = new org.apache.hadoop.hive.metastore.utils.FileUtils$2;
specialinvoke v.<org.apache.hadoop.hive.metastore.utils.FileUtils$2: void <init>()>();
<org.apache.hadoop.hive.metastore.utils.FileUtils: org.apache.hadoop.fs.PathFilter HIDDEN_FILES_PATH_FILTER> = v;
v = new org.apache.hadoop.hive.metastore.utils.FileUtils$3;
specialinvoke v.<org.apache.hadoop.hive.metastore.utils.FileUtils$3: void <init>()>();
<org.apache.hadoop.hive.metastore.utils.FileUtils: org.apache.hadoop.fs.PathFilter hiddenFileFilter> = v;
v = new java.util.BitSet;
specialinvoke v.<java.util.BitSet: void <init>(int)>(128);
<org.apache.hadoop.hive.metastore.utils.FileUtils: java.util.BitSet charToEscape> = v;
label:
v = <org.apache.hadoop.hive.metastore.utils.FileUtils: java.util.BitSet charToEscape>;
virtualinvoke v.<java.util.BitSet: void set(int)>(0);
goto label;
}
}