You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by xu...@apache.org on 2014/11/14 01:51:51 UTC
svn commit: r1639559 -
/hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/SparkMapJoinResolver.java
Author: xuefu
Date: Fri Nov 14 00:51:51 2014
New Revision: 1639559
URL: http://svn.apache.org/r1639559
Log:
HIVE-8859: ColumnStatsTask fails because of SparkMapJoinResolver [Spark Branch] (Chao via Xuefu)
Modified:
hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/SparkMapJoinResolver.java
Modified: hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/SparkMapJoinResolver.java
URL: http://svn.apache.org/viewvc/hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/SparkMapJoinResolver.java?rev=1639559&r1=1639558&r2=1639559&view=diff
==============================================================================
--- hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/SparkMapJoinResolver.java (original)
+++ hive/branches/spark/ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/SparkMapJoinResolver.java Fri Nov 14 00:51:51 2014
@@ -145,14 +145,16 @@ public class SparkMapJoinResolver implem
parentTask.addDependentTask(resultTask);
}
} else {
- List<Task<? extends Serializable>> parentTasks = originalTask.getParentTasks();
- if (parentTasks != null && parentTasks.size() > 0) {
- for (Task<? extends Serializable> parentTask : parentTasks) {
- parentTask.addDependentTask(resultTask);
+ if (originalTask != resultTask) {
+ List<Task<? extends Serializable>> parentTasks = originalTask.getParentTasks();
+ if (parentTasks != null && parentTasks.size() > 0) {
+ for (Task<? extends Serializable> parentTask : parentTasks) {
+ parentTask.addDependentTask(resultTask);
+ }
+ } else {
+ physicalContext.addToRootTask(resultTask);
+ physicalContext.removeFromRootTask(originalTask);
}
- } else {
- physicalContext.addToRootTask(resultTask);
- physicalContext.removeFromRootTask(originalTask);
}
}