You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by om...@apache.org on 2018/04/26 14:59:11 UTC
[47/50] [abbrv] hive git commit: HIVE-19204: Detailed errors from
some tasks are not displayed to the client because the tasks don't set
exception when they fail (Aihua Xu, reviewed by Sahil Takiar)
HIVE-19204: Detailed errors from some tasks are not displayed to the client because the tasks don't set exception when they fail (Aihua Xu, reviewed by Sahil Takiar)
Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/11b0d857
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/11b0d857
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/11b0d857
Branch: refs/heads/storage-branch-2.6
Commit: 11b0d85786cd58469d5662c3027e9389cff07710
Parents: f94ae7f
Author: Aihua Xu <ai...@apache.org>
Authored: Mon Apr 16 10:36:02 2018 -0700
Committer: Aihua Xu <ai...@apache.org>
Committed: Wed Apr 25 16:09:42 2018 -0700
----------------------------------------------------------------------
.../java/org/apache/hadoop/hive/ql/Driver.java | 6 ++++-
.../hive/ql/exec/ColumnStatsUpdateTask.java | 1 +
.../hive/ql/exec/ExplainSQRewriteTask.java | 8 +++---
.../apache/hadoop/hive/ql/exec/ExplainTask.java | 5 ++--
.../hive/ql/exec/MaterializedViewTask.java | 1 +
.../hadoop/hive/ql/exec/ReplCopyTask.java | 4 +--
.../apache/hadoop/hive/ql/exec/StatsTask.java | 1 +
.../hadoop/hive/ql/exec/mr/ExecDriver.java | 4 +--
.../io/rcfile/truncate/ColumnTruncateTask.java | 26 +++++++-------------
.../ql/reexec/ReExecutionOverlayPlugin.java | 2 +-
10 files changed, 29 insertions(+), 29 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hive/blob/11b0d857/ql/src/java/org/apache/hadoop/hive/ql/Driver.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/Driver.java b/ql/src/java/org/apache/hadoop/hive/ql/Driver.java
index 4e8dbe2..f83bdaf 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/Driver.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/Driver.java
@@ -2389,7 +2389,11 @@ public class Driver implements IDriver {
if(downstreamError != null) {
//here we assume that upstream code may have parametrized the msg from ErrorMsg
//so we want to keep it
- errorMessage += ". " + downstreamError.getMessage();
+ if (downstreamError.getMessage() != null) {
+ errorMessage += ". " + downstreamError.getMessage();
+ } else {
+ errorMessage += ". " + org.apache.hadoop.util.StringUtils.stringifyException(downstreamError);
+ }
}
else {
ErrorMsg em = ErrorMsg.getErrorMsg(exitVal);
http://git-wip-us.apache.org/repos/asf/hive/blob/11b0d857/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnStatsUpdateTask.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnStatsUpdateTask.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnStatsUpdateTask.java
index 207b66f..a53ff5a 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnStatsUpdateTask.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnStatsUpdateTask.java
@@ -300,6 +300,7 @@ public class ColumnStatsUpdateTask extends Task<ColumnStatsUpdateWork> {
Hive db = getHive();
return persistColumnStats(db);
} catch (Exception e) {
+ setException(e);
LOG.info("Failed to persist stats in metastore", e);
}
return 1;
http://git-wip-us.apache.org/repos/asf/hive/blob/11b0d857/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainSQRewriteTask.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainSQRewriteTask.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainSQRewriteTask.java
index 80d54bf..1f9e9aa 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainSQRewriteTask.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainSQRewriteTask.java
@@ -38,11 +38,13 @@ import org.apache.hadoop.hive.ql.parse.SubQueryDiagnostic;
import org.apache.hadoop.hive.ql.plan.ExplainSQRewriteWork;
import org.apache.hadoop.hive.ql.plan.api.StageType;
import org.apache.hadoop.io.IOUtils;
-import org.apache.hadoop.util.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
public class ExplainSQRewriteTask extends Task<ExplainSQRewriteWork> implements Serializable {
private static final long serialVersionUID = 1L;
+ private final Logger LOG = LoggerFactory.getLogger(this.getClass().getName());
@Override
public StageType getType() {
@@ -76,8 +78,8 @@ public class ExplainSQRewriteTask extends Task<ExplainSQRewriteWork> implements
return (0);
}
catch (Exception e) {
- console.printError("Failed with exception " + e.getMessage(),
- "\n" + StringUtils.stringifyException(e));
+ setException(e);
+ LOG.error(org.apache.hadoop.util.StringUtils.stringifyException(e));
return (1);
}
finally {
http://git-wip-us.apache.org/repos/asf/hive/blob/11b0d857/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainTask.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainTask.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainTask.java
index 0b30721..34da025 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainTask.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/ExplainTask.java
@@ -65,7 +65,6 @@ import org.apache.hadoop.hive.ql.plan.api.StageType;
import org.apache.hadoop.hive.ql.security.authorization.AuthorizationFactory;
import org.apache.hadoop.hive.ql.session.SessionState;
import org.apache.hadoop.io.IOUtils;
-import org.apache.hadoop.util.StringUtils;
import org.apache.hive.common.util.AnnotationUtils;
import org.json.JSONArray;
import org.json.JSONException;
@@ -383,8 +382,8 @@ public class ExplainTask extends Task<ExplainWork> implements Serializable {
return (0);
}
catch (Exception e) {
- console.printError("Failed with exception " + e.getMessage(),
- "\n" + StringUtils.stringifyException(e));
+ LOG.error(org.apache.hadoop.util.StringUtils.stringifyException(e));
+ setException(e);
return (1);
}
finally {
http://git-wip-us.apache.org/repos/asf/hive/blob/11b0d857/ql/src/java/org/apache/hadoop/hive/ql/exec/MaterializedViewTask.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/MaterializedViewTask.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/MaterializedViewTask.java
index 834df84..19aef6c 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/MaterializedViewTask.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/MaterializedViewTask.java
@@ -76,6 +76,7 @@ public class MaterializedViewTask extends Task<MaterializedViewDesc> implements
}
} catch (HiveException e) {
LOG.debug("Exception during materialized view cache update", e);
+ setException(e);
}
return 0;
}
http://git-wip-us.apache.org/repos/asf/hive/blob/11b0d857/ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java
index 1cad579..de270cf 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/ReplCopyTask.java
@@ -163,8 +163,8 @@ public class ReplCopyTask extends Task<ReplCopyWork> implements Serializable {
}
return 0;
} catch (Exception e) {
- console.printError("Failed with exception " + e.getMessage(), "\n"
- + StringUtils.stringifyException(e));
+ LOG.error(StringUtils.stringifyException(e));
+ setException(e);
return (1);
}
}
http://git-wip-us.apache.org/repos/asf/hive/blob/11b0d857/ql/src/java/org/apache/hadoop/hive/ql/exec/StatsTask.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/StatsTask.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/StatsTask.java
index 00eb7de..7a4242a 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/StatsTask.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/StatsTask.java
@@ -112,6 +112,7 @@ public class StatsTask extends Task<StatsWork> implements Serializable {
}
} catch (Exception e) {
LOG.error("Failed to run stats task", e);
+ setException(e);
return 1;
}
return 0;
http://git-wip-us.apache.org/repos/asf/hive/blob/11b0d857/ql/src/java/org/apache/hadoop/hive/ql/exec/mr/ExecDriver.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/mr/ExecDriver.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/mr/ExecDriver.java
index 7ff8ddc..1de782a 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/exec/mr/ExecDriver.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/mr/ExecDriver.java
@@ -465,9 +465,9 @@ public class ExecDriver extends Task<MapredWork> implements Serializable, Hadoop
jc.close();
}
} catch (Exception e) {
- LOG.warn("Failed while cleaning up ", e);
+ LOG.warn("Failed while cleaning up ", e);
} finally {
- HadoopJobExecHelper.runningJobs.remove(rj);
+ HadoopJobExecHelper.runningJobs.remove(rj);
}
}
http://git-wip-us.apache.org/repos/asf/hive/blob/11b0d857/ql/src/java/org/apache/hadoop/hive/ql/io/rcfile/truncate/ColumnTruncateTask.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/io/rcfile/truncate/ColumnTruncateTask.java b/ql/src/java/org/apache/hadoop/hive/ql/io/rcfile/truncate/ColumnTruncateTask.java
index 434c3a8..8f21f7c 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/io/rcfile/truncate/ColumnTruncateTask.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/io/rcfile/truncate/ColumnTruncateTask.java
@@ -94,9 +94,8 @@ public class ColumnTruncateTask extends Task<ColumnTruncateWork> implements Seri
ctxCreated = true;
}
}catch (IOException e) {
- e.printStackTrace();
- console.printError("Error launching map-reduce job", "\n"
- + org.apache.hadoop.util.StringUtils.stringifyException(e));
+ LOG.error(org.apache.hadoop.util.StringUtils.stringifyException(e));
+ setException(e);
return 5;
}
@@ -136,7 +135,8 @@ public class ColumnTruncateTask extends Task<ColumnTruncateWork> implements Seri
fs.mkdirs(tempOutPath);
}
} catch (IOException e) {
- console.printError("Can't make path " + outputPath + " : " + e.getMessage());
+ setException(e);
+ LOG.error("Can't make path " + outputPath, e);
return 6;
}
@@ -191,19 +191,11 @@ public class ColumnTruncateTask extends Task<ColumnTruncateWork> implements Seri
success = (returnVal == 0);
} catch (Exception e) {
- e.printStackTrace();
- setException(e);
- String mesg = " with exception '" + Utilities.getNameMessage(e) + "'";
- if (rj != null) {
- mesg = "Ended Job = " + rj.getJobID() + mesg;
- } else {
- mesg = "Job Submission failed" + mesg;
- }
-
+ String mesg = rj != null ? ("Ended Job = " + rj.getJobID()) : "Job Submission failed";
// Has to use full name to make sure it does not conflict with
// org.apache.commons.lang.StringUtils
- console.printError(mesg, "\n"
- + org.apache.hadoop.util.StringUtils.stringifyException(e));
+ LOG.error(mesg, org.apache.hadoop.util.StringUtils.stringifyException(e));
+ setException(e);
success = false;
returnVal = 1;
@@ -220,9 +212,9 @@ public class ColumnTruncateTask extends Task<ColumnTruncateWork> implements Seri
ColumnTruncateMapper.jobClose(outputPath, success, job, console,
work.getDynPartCtx(), null);
} catch (Exception e) {
- LOG.warn("Failed while cleaning up ", e);
+ LOG.warn("Failed while cleaning up ", e);
} finally {
- HadoopJobExecHelper.runningJobs.remove(rj);
+ HadoopJobExecHelper.runningJobs.remove(rj);
}
}
http://git-wip-us.apache.org/repos/asf/hive/blob/11b0d857/ql/src/java/org/apache/hadoop/hive/ql/reexec/ReExecutionOverlayPlugin.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/reexec/ReExecutionOverlayPlugin.java b/ql/src/java/org/apache/hadoop/hive/ql/reexec/ReExecutionOverlayPlugin.java
index 950903c..50803cc 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/reexec/ReExecutionOverlayPlugin.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/reexec/ReExecutionOverlayPlugin.java
@@ -42,7 +42,7 @@ public class ReExecutionOverlayPlugin implements IReExecutionPlugin {
if (hookContext.getHookType() == HookType.ON_FAILURE_HOOK) {
Throwable exception = hookContext.getException();
if (exception != null) {
- if (exception.getMessage().contains("Vertex failed,")) {
+ if (exception.getMessage() != null && exception.getMessage().contains("Vertex failed,")) {
retryPossible = true;
}
}