diff --git a/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDTFGetSplits.java b/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDTFGetSplits.java index 7682e1f5c2..9568096019 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDTFGetSplits.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDTFGetSplits.java @@ -128,6 +128,7 @@ @UDFType(deterministic = false) public class GenericUDTFGetSplits extends GenericUDTF { private static final Logger LOG = LoggerFactory.getLogger(GenericUDTFGetSplits.class); + private static String sha = null; protected transient StringObjectInspector stringOI; protected transient IntObjectInspector intOI; @@ -703,7 +704,9 @@ private LocalResource createJarLocalResource(String localJarPath, Path destDirPath = destDirStatus.getPath(); Path localFile = new Path(localJarPath); - String sha = getSha(localFile, conf); + if (sha == null || !destDirPath.toString().contains(sha)) { + sha = getSha(localFile, conf); + } String destFileName = localFile.getName();