This is an automated email from the ASF dual-hosted git repository.

kgyrtkirk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hive.git

commit a344426b37e4ac21166c43ab2fee8cea1e45b30a
Author: Rajkumar Singh <rajkrrsi...@gmail.com>
AuthorDate: Fri Jan 24 16:06:00 2020 +0000

    HIVE-22712: ReExec Driver execute submit the query in default queue 
irrespective of user defined queue (Rajkumar Singh via Zoltan Haindrich)
    
    Signed-off-by: Zoltan Haindrich <k...@rxd.hu>
---
 .../hive/ql/reexec/ReExecutionOverlayPlugin.java   |  7 ++++++
 ql/src/test/queries/clientpositive/retry_failure.q |  3 +++
 .../clientpositive/llap/retry_failure.q.out        | 25 ++++++++++++++++++++++
 3 files changed, 35 insertions(+)

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 50803cc..83df334 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
@@ -26,6 +26,7 @@ import org.apache.hadoop.hive.ql.hooks.ExecuteWithHookContext;
 import org.apache.hadoop.hive.ql.hooks.HookContext;
 import org.apache.hadoop.hive.ql.hooks.HookContext.HookType;
 import org.apache.hadoop.hive.ql.plan.mapper.PlanMapper;
+import org.apache.tez.dag.api.TezConfiguration;
 
 /**
  * Re-Executes a query only adding an extra overlay
@@ -55,6 +56,12 @@ public class ReExecutionOverlayPlugin implements 
IReExecutionPlugin {
     this.driver = driver;
     driver.getHookRunner().addOnFailureHook(new LocalHook());
     HiveConf conf = driver.getConf();
+    // we unset the queue name intentionally in 
TezSessionState#startSessionAndContainers
+    // as a result reexec create new session in the default queue and create 
problem
+    String queueName = conf.get(TezConfiguration.TEZ_QUEUE_NAME);
+    if (queueName != null) {
+      conf.set("reexec.overlay.tez.queue.name", queueName);
+    }
     subtree = conf.subtree("reexec.overlay");
   }
 
diff --git a/ql/src/test/queries/clientpositive/retry_failure.q 
b/ql/src/test/queries/clientpositive/retry_failure.q
index ad12ecd..b1bc789 100644
--- a/ql/src/test/queries/clientpositive/retry_failure.q
+++ b/ql/src/test/queries/clientpositive/retry_failure.q
@@ -9,5 +9,8 @@ set reexec.overlay.zzz=2;
 
 set hive.query.reexecution.enabled=true;
 set hive.query.reexecution.strategies=overlay;
+set hive.fetch.task.conversion=none;
+set tez.queue.name=default;
 
 select assert_true(${hiveconf:zzz} > a) from tx_n1 group by a;
+select assert_true(${hiveconf:zzz} > a), 
assert_true("${hiveconf:tez.queue.name}" = "default") from tx_n1;
diff --git a/ql/src/test/results/clientpositive/llap/retry_failure.q.out 
b/ql/src/test/results/clientpositive/llap/retry_failure.q.out
index b0a153d..59d854a 100644
--- a/ql/src/test/results/clientpositive/llap/retry_failure.q.out
+++ b/ql/src/test/results/clientpositive/llap/retry_failure.q.out
@@ -41,3 +41,28 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@tx_n1
 #### A masked pattern was here ####
 NULL
+PREHOOK: query: select assert_true(1 > a), assert_true("default" = "default") 
from tx_n1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@tx_n1
+#### A masked pattern was here ####
+Status: Failed
+Vertex failed, vertexName=Map 1, vertexId=vertex_#ID#, diagnostics=[Task 
failed, taskId=task_#ID#, diagnostics=[TaskAttempt 0 failed, info=[Error: Error 
while running task ( failure ) : attempt_#ID#:java.lang.RuntimeException: 
java.lang.RuntimeException: org.apache.hadoop.hive.ql.metadata.HiveException: 
Hive Runtime Error while processing row
+#### A masked pattern was here ####
+], TaskAttempt 1 failed, info=[Error: Error while running task ( failure ) : 
attempt_#ID#:java.lang.RuntimeException: java.lang.RuntimeException: 
org.apache.hadoop.hive.ql.metadata.HiveException: Hive Runtime Error while 
processing row
+#### A masked pattern was here ####
+]], Vertex did not succeed due to OWN_TASK_FAILURE, failedTasks:1 
killedTasks:0, Vertex vertex_#ID# [Map 1] killed/failed due to:OWN_TASK_FAILURE]
+DAG did not succeed due to VERTEX_FAILURE. failedVertices:1 killedVertices:0
+FAILED: Execution Error, return code 2 from 
org.apache.hadoop.hive.ql.exec.tez.TezTask. Vertex failed, vertexName=Map 1, 
vertexId=vertex_#ID#, diagnostics=[Task failed, taskId=task_#ID#, 
diagnostics=[TaskAttempt 0 failed, info=[Error: Error while running task ( 
failure ) : attempt_#ID#:java.lang.RuntimeException: 
java.lang.RuntimeException: org.apache.hadoop.hive.ql.metadata.HiveException: 
Hive Runtime Error while processing row
+#### A masked pattern was here ####
+], TaskAttempt 1 failed, info=[Error: Error while running task ( failure ) : 
attempt_#ID#:java.lang.RuntimeException: java.lang.RuntimeException: 
org.apache.hadoop.hive.ql.metadata.HiveException: Hive Runtime Error while 
processing row
+#### A masked pattern was here ####
+]], Vertex did not succeed due to OWN_TASK_FAILURE, failedTasks:1 
killedTasks:0, Vertex vertex_#ID# [Map 1] killed/failed due 
to:OWN_TASK_FAILURE]DAG did not succeed due to VERTEX_FAILURE. failedVertices:1 
killedVertices:0
+PREHOOK: query: select assert_true(2 > a), assert_true("default" = "default") 
from tx_n1
+PREHOOK: type: QUERY
+PREHOOK: Input: default@tx_n1
+#### A masked pattern was here ####
+POSTHOOK: query: select assert_true(2 > a), assert_true("default" = "default") 
from tx_n1
+POSTHOOK: type: QUERY
+POSTHOOK: Input: default@tx_n1
+#### A masked pattern was here ####
+NULL   NULL

Reply via email to