Index: ql/src/java/org/apache/hadoop/hive/ql/exec/mr/ExecDriver.java =================================================================== --- ql/src/java/org/apache/hadoop/hive/ql/exec/mr/ExecDriver.java (revision 1512555) +++ ql/src/java/org/apache/hadoop/hive/ql/exec/mr/ExecDriver.java (working copy) @@ -83,7 +83,6 @@ import org.apache.hadoop.mapred.JobConf; import org.apache.hadoop.mapred.Partitioner; import org.apache.hadoop.mapred.RunningJob; -import org.apache.hadoop.mapred.lib.TotalOrderPartitioner; import org.apache.log4j.Appender; import org.apache.log4j.BasicConfigurator; import org.apache.log4j.FileAppender; @@ -505,7 +504,7 @@ String tmpPath = context.getCtx().getExternalTmpFileURI(onePath.toUri()); Path partitionFile = new Path(tmpPath, ".partitions"); - TotalOrderPartitioner.setPartitionFile(job, partitionFile); + ShimLoader.getHadoopShims().setTotalOrderPartitionFile(job, partitionFile); PartitionKeySampler sampler = new PartitionKeySampler(); Index: shims/src/0.20/java/org/apache/hadoop/hive/shims/Hadoop20Shims.java =================================================================== --- shims/src/0.20/java/org/apache/hadoop/hive/shims/Hadoop20Shims.java (revision 1512555) +++ shims/src/0.20/java/org/apache/hadoop/hive/shims/Hadoop20Shims.java (working copy) @@ -63,6 +63,7 @@ import org.apache.hadoop.mapred.TaskLogServlet; import org.apache.hadoop.mapred.lib.CombineFileInputFormat; import org.apache.hadoop.mapred.lib.CombineFileSplit; +import org.apache.hadoop.mapred.lib.TotalOrderPartitioner; import org.apache.hadoop.mapreduce.Job; import org.apache.hadoop.mapreduce.TaskAttemptID; import org.apache.hadoop.security.SecurityUtil; @@ -77,6 +78,7 @@ * Implemention of shims against Hadoop 0.20.0. */ public class Hadoop20Shims implements HadoopShims { + public boolean usesJobShell() { return false; } @@ -194,6 +196,10 @@ }; } + public void setTotalOrderPartitionFile(JobConf jobConf, Path partitionFile){ + TotalOrderPartitioner.setPartitionFile(jobConf, partitionFile); + } + public static class InputSplitShim extends CombineFileSplit implements HadoopShims.InputSplitShim { long shrinkedLength; boolean _isShrinked; Index: shims/src/0.20S/java/org/apache/hadoop/hive/shims/Hadoop20SShims.java =================================================================== --- shims/src/0.20S/java/org/apache/hadoop/hive/shims/Hadoop20SShims.java (revision 1512555) +++ shims/src/0.20S/java/org/apache/hadoop/hive/shims/Hadoop20SShims.java (working copy) @@ -34,7 +34,9 @@ import org.apache.hadoop.mapreduce.Job; import org.apache.hadoop.mapreduce.TaskAttemptID; import org.apache.hadoop.util.Progressable; +import org.apache.hadoop.mapred.lib.TotalOrderPartitioner; + /** * Implemention of shims against Hadoop 0.20 with Security. */ @@ -122,6 +124,11 @@ return fs.getDefaultReplication(); } + @Override + public void setTotalOrderPartitionFile(JobConf jobConf, Path partitionFile){ + TotalOrderPartitioner.setPartitionFile(jobConf, partitionFile); + } + /** * Returns a shim to wrap MiniMrCluster */ Index: shims/src/0.23/java/org/apache/hadoop/hive/shims/Hadoop23Shims.java =================================================================== --- shims/src/0.23/java/org/apache/hadoop/hive/shims/Hadoop23Shims.java (revision 1512555) +++ shims/src/0.23/java/org/apache/hadoop/hive/shims/Hadoop23Shims.java (working copy) @@ -40,7 +40,9 @@ import org.apache.hadoop.mapreduce.task.TaskAttemptContextImpl; import org.apache.hadoop.mapreduce.util.HostUtil; import org.apache.hadoop.util.Progressable; +import org.apache.hadoop.mapred.lib.TotalOrderPartitioner; + /** * Implemention of shims against Hadoop 0.23.0. */ @@ -137,6 +139,11 @@ return Trash.moveToAppropriateTrash(fs, path, conf); } + @Override + public void setTotalOrderPartitionFile(JobConf jobConf, Path partitionFile){ + TotalOrderPartitioner.setPartitionFile(jobConf, partitionFile); + } + /** * Returns a shim to wrap MiniMrCluster */ Index: shims/src/common/java/org/apache/hadoop/hive/shims/HadoopShims.java =================================================================== --- shims/src/common/java/org/apache/hadoop/hive/shims/HadoopShims.java (revision 1512555) +++ shims/src/common/java/org/apache/hadoop/hive/shims/HadoopShims.java (working copy) @@ -394,6 +394,13 @@ UserGroupInformation createProxyUser(String userName) throws IOException; /** + * The method sets to set the partition file has a different signature between + * hadoop versions. + * @param jobConf + * @param partition + */ + void setTotalOrderPartitionFile(JobConf jobConf, Path partition); + /** * InputSplitShim. * */