diff --git ql/src/java/org/apache/hadoop/hive/ql/io/merge/MergeFileTask.java ql/src/java/org/apache/hadoop/hive/ql/io/merge/MergeFileTask.java index 0e86aac..97e564d 100644 --- ql/src/java/org/apache/hadoop/hive/ql/io/merge/MergeFileTask.java +++ ql/src/java/org/apache/hadoop/hive/ql/io/merge/MergeFileTask.java @@ -127,6 +127,30 @@ public int execute(DriverContext driverContext) { jobName != null ? jobName : "JOB" + Utilities.randGen.nextInt()); } + if (work.getNumMapTasks() != null) { + job.setNumMapTasks(work.getNumMapTasks().intValue()); + } + + if (work.getMaxSplitSize() != null) { + HiveConf.setLongVar(job, HiveConf.ConfVars.MAPREDMAXSPLITSIZE, + work.getMaxSplitSize().longValue()); + } + + if (work.getMinSplitSize() != null) { + HiveConf.setLongVar(job, HiveConf.ConfVars.MAPREDMINSPLITSIZE, + work.getMinSplitSize().longValue()); + } + + if (work.getMinSplitSizePerNode() != null) { + HiveConf.setLongVar(job, HiveConf.ConfVars.MAPREDMINSPLITSIZEPERNODE, + work.getMinSplitSizePerNode().longValue()); + } + + if (work.getMinSplitSizePerRack() != null) { + HiveConf.setLongVar(job, HiveConf.ConfVars.MAPREDMINSPLITSIZEPERRACK, + work.getMinSplitSizePerRack().longValue()); + } + // add input path addInputPaths(job, work);