diff --git ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/SparkMapJoinResolver.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/SparkMapJoinResolver.java index 96481f1..819b020 100644 --- ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/SparkMapJoinResolver.java +++ ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/SparkMapJoinResolver.java @@ -160,16 +160,10 @@ private void generateLocalWork(SparkTask originalTask) { for (BaseWork parentWork : originalWork.getParents(work)) { if (containsOp(parentWork,SparkHashTableSinkOperator.class)) { parentWork.getMapRedLocalWork().setTmpHDFSPath(tmpPath); - parentWork.getMapRedLocalWork().setDummyParentOp( - new ArrayList>()); } } - bigTableLocalWork.setAliasToWork( - new LinkedHashMap>()); - bigTableLocalWork.setAliasToFetchWork(new LinkedHashMap()); bigTableLocalWork.setTmpPath(tmpPath); - // TODO: set inputFileChangeSensitive and BucketMapjoinContext, // TODO: enable non-staged mapjoin } diff --git ql/src/java/org/apache/hadoop/hive/ql/plan/MapredLocalWork.java ql/src/java/org/apache/hadoop/hive/ql/plan/MapredLocalWork.java index 6fbdcd2..4c018b9 100644 --- ql/src/java/org/apache/hadoop/hive/ql/plan/MapredLocalWork.java +++ ql/src/java/org/apache/hadoop/hive/ql/plan/MapredLocalWork.java @@ -19,6 +19,7 @@ package org.apache.hadoop.hive.ql.plan; import java.io.Serializable; +import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; import java.util.HashSet; @@ -54,21 +55,25 @@ private boolean hasStagedAlias; public MapredLocalWork() { - + aliasToWork = new LinkedHashMap>(); + aliasToFetchWork = new LinkedHashMap(); + dummyParentOp = new ArrayList>(); + directFetchOp = new LinkedHashMap>>(); } public MapredLocalWork( final LinkedHashMap> aliasToWork, final LinkedHashMap aliasToFetchWork) { + this(); this.aliasToWork = aliasToWork; this.aliasToFetchWork = aliasToFetchWork; } public MapredLocalWork(MapredLocalWork clone){ + this(); this.tmpPath = clone.tmpPath; this.inputFileChangeSensitive=clone.inputFileChangeSensitive; - } @@ -78,7 +83,7 @@ public void setDummyParentOp(List> op){ public List> getDummyParentOp(){ - return this.dummyParentOp; + return dummyParentOp; }