diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezSessionState.java ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezSessionState.java index b2f7b44..09b390c 100644 --- ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezSessionState.java +++ ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezSessionState.java @@ -115,7 +115,7 @@ public void open(String sessionId, HiveConf conf) // In case we need to run some MR jobs, we'll run them under tez MR emulation. The session // id is used for tez to reuse the current session rather than start a new one. conf.set("mapreduce.framework.name", "yarn-tez"); - conf.set("tez.session.id", session.getApplicationId().toString()); + conf.set("mapreduce.tez.session.tokill-application-id", session.getApplicationId().toString()); } /** diff --git ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMapRedUtils.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMapRedUtils.java index 4ad1699..4f1956e 100644 --- ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMapRedUtils.java +++ ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMapRedUtils.java @@ -1245,10 +1245,16 @@ public static void createMRWorkForMergingFiles (FileSinkOperator fsInput, } else { cplan = createMRWorkForMergingFiles(conf, tsMerge, fsInputDesc); - work = new MapredWork(); - ((MapredWork)work).setMapWork(cplan); - // use CombineHiveInputFormat for map-only merging + if (conf.getBoolVar(ConfVars.HIVE_OPTIMIZE_TEZ)) { + work = new TezWork(); + cplan.setName("Merge"); + ((TezWork)work).add(cplan); + } else { + work = new MapredWork(); + ((MapredWork)work).setMapWork(cplan); + } } + // use CombineHiveInputFormat for map-only merging cplan.setInputformat("org.apache.hadoop.hive.ql.io.CombineHiveInputFormat"); // NOTE: we should gather stats in MR1 rather than MR2 at merge job since we don't // know if merge MR2 will be triggered at execution time diff --git ql/src/java/org/apache/hadoop/hive/ql/plan/ConditionalResolverMergeFiles.java ql/src/java/org/apache/hadoop/hive/ql/plan/ConditionalResolverMergeFiles.java index c74a6d3..5f3d611 100644 --- ql/src/java/org/apache/hadoop/hive/ql/plan/ConditionalResolverMergeFiles.java +++ ql/src/java/org/apache/hadoop/hive/ql/plan/ConditionalResolverMergeFiles.java @@ -147,6 +147,8 @@ public void setLbCtx(ListBucketingCtx lbCtx) { MapWork work; if (mrTask.getWork() instanceof MapredWork) { work = ((MapredWork) mrTask.getWork()).getMapWork(); + } else if (mrTask.getWork() instanceof TezWork){ + work = (MapWork) ((TezWork) mrTask.getWork()).getAllWork().get(0); } else { work = (MapWork) mrTask.getWork(); }