Repository: hive
Updated Branches:
  refs/heads/master 2bf0d92d1 -> 2f7323396


HIVE-13128. NullScan fails on a secure setup. (Siddharth Seth, reviewed by 
Sergey Shelukhin)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/2f732339
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/2f732339
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/2f732339

Branch: refs/heads/master
Commit: 2f73233961e6f527f5460c124cc021a4a9628b01
Parents: 2bf0d92
Author: Siddharth Seth <ss...@apache.org>
Authored: Wed Feb 24 10:31:41 2016 -0800
Committer: Siddharth Seth <ss...@apache.org>
Committed: Wed Feb 24 10:31:41 2016 -0800

----------------------------------------------------------------------
 .../org/apache/hadoop/hive/ql/exec/tez/DagUtils.java |  5 ++---
 .../hadoop/hive/ql/exec/tez/TezSessionState.java     |  2 ++
 .../org/apache/hadoop/hive/ql/exec/tez/TezTask.java  |  7 ++-----
 .../apache/hadoop/hive/ql/io/NullScanFileSystem.java | 15 +++++++++++++++
 4 files changed, 21 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hive/blob/2f732339/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/DagUtils.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/DagUtils.java 
b/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/DagUtils.java
index 39866a3..473dbd6 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/DagUtils.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/DagUtils.java
@@ -754,7 +754,7 @@ public class DagUtils {
     URL resourceURL = ConverterUtils.getYarnUrlFromPath(file);
     long resourceSize = fstat.getLen();
     long resourceModificationTime = fstat.getModificationTime();
-    LOG.info("Resource modification time: " + resourceModificationTime);
+    LOG.info("Resource modification time: " + resourceModificationTime + " for 
" + file);
 
     LocalResource lr = Records.newRecord(LocalResource.class);
     lr.setResource(resourceURL);
@@ -912,7 +912,7 @@ public class DagUtils {
 
     if (fstatus == null) {
       Path destDir = getDefaultDestDir(conf);
-      LOG.info("Jar dir is null/directory doesn't exist. Choosing 
HIVE_INSTALL_DIR - " + destDir);
+      LOG.info("Jar dir is null / directory doesn't exist. Choosing 
HIVE_INSTALL_DIR - " + destDir);
       fstatus = validateTargetDir(destDir, conf);
     }
 
@@ -1275,5 +1275,4 @@ public class DagUtils {
   private DagUtils() {
     // don't instantiate
   }
-
 }

http://git-wip-us.apache.org/repos/asf/hive/blob/2f732339/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezSessionState.java
----------------------------------------------------------------------
diff --git 
a/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezSessionState.java 
b/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezSessionState.java
index 6675f0d..3ea5ef9 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezSessionState.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezSessionState.java
@@ -548,6 +548,8 @@ public class TezSessionState {
   private LocalResource createJarLocalResource(String localJarPath)
       throws IOException, LoginException, IllegalArgumentException,
       FileNotFoundException {
+    // TODO Reduce the number of lookups that happen here. This shouldn't go 
to HDFS for each call.
+    // The hiveJarDir can be determined once per client.
     FileStatus destDirStatus = utils.getHiveJarDirectory(conf);
     assert destDirStatus != null;
     Path destDirPath = destDirStatus.getPath();

http://git-wip-us.apache.org/repos/asf/hive/blob/2f732339/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezTask.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezTask.java 
b/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezTask.java
index 83defea..3789ce9 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezTask.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezTask.java
@@ -173,9 +173,6 @@ public class TezTask extends Task<TezWork> {
 
       // next we translate the TezWork to a Tez DAG
       DAG dag = build(jobConf, work, scratchDir, appJarLr, additionalLr, ctx);
-      if (driverContext.getCtx() == null) {
-        boolean a = false;
-      }
       CallerContext callerContext = CallerContext.create(
           "HIVE", queryPlan.getQueryId(),
           "HIVE_QUERY_ID", queryPlan.getQueryStr());
@@ -460,10 +457,10 @@ public class TezTask extends Task<TezWork> {
     } catch (Exception e) {
       // In case of any other exception, retry. If this also fails, report 
original error and exit.
       try {
-        TezSessionPoolManager.getInstance().closeAndOpen(sessionState, 
this.conf, inputOutputJars,
-            true);
         console.printInfo("Dag submit failed due to " + e.getMessage() + " 
stack trace: "
             + Arrays.toString(e.getStackTrace()) + " retrying...");
+        TezSessionPoolManager.getInstance().closeAndOpen(sessionState, 
this.conf, inputOutputJars,
+            true);
         dagClient = sessionState.getSession().submitDAG(dag);
       } catch (Exception retryException) {
         // we failed to submit after retrying. Destroy session and bail.

http://git-wip-us.apache.org/repos/asf/hive/blob/2f732339/ql/src/java/org/apache/hadoop/hive/ql/io/NullScanFileSystem.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/io/NullScanFileSystem.java 
b/ql/src/java/org/apache/hadoop/hive/ql/io/NullScanFileSystem.java
index 88e9445..5bfde18 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/io/NullScanFileSystem.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/io/NullScanFileSystem.java
@@ -29,6 +29,8 @@ import org.apache.hadoop.fs.FileStatus;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.fs.permission.FsPermission;
+import org.apache.hadoop.security.Credentials;
+import org.apache.hadoop.security.token.Token;
 import org.apache.hadoop.util.Progressable;
 
 /**
@@ -45,6 +47,8 @@ public class NullScanFileSystem extends FileSystem {
     return "nullscan";
   }
 
+  private final Token<?>[] DEFAULT_EMPTY_TOKEN_ARRAY = new Token<?>[0];
+
   public NullScanFileSystem() {
   }
 
@@ -113,4 +117,15 @@ public class NullScanFileSystem extends FileSystem {
   public FileStatus getFileStatus(Path f) throws IOException {
     return new FileStatus(0, false, 0, 0, 0, f);
   }
+
+  @Override
+  public Token<?>[] addDelegationTokens(String renewer, Credentials 
credentials) throws
+      IOException {
+    return DEFAULT_EMPTY_TOKEN_ARRAY;
+  }
+
+  @Override
+  public Token<?> getDelegationToken(String renewer) throws IOException {
+    return null;
+  }
 }
\ No newline at end of file

Reply via email to