diff --git shims/0.20S/src/main/java/org/apache/hadoop/hive/shims/Hadoop20SShims.java shims/0.20S/src/main/java/org/apache/hadoop/hive/shims/Hadoop20SShims.java index d0ff7d4..2747943 100644 --- shims/0.20S/src/main/java/org/apache/hadoop/hive/shims/Hadoop20SShims.java +++ shims/0.20S/src/main/java/org/apache/hadoop/hive/shims/Hadoop20SShims.java @@ -38,6 +38,7 @@ import org.apache.hadoop.fs.Trash; import org.apache.hadoop.hdfs.MiniDFSCluster; import org.apache.hadoop.io.LongWritable; +import org.apache.hadoop.mapred.JobInProgress; import org.apache.hadoop.mapred.JobTracker; import org.apache.hadoop.mapred.MiniMRCluster; import org.apache.hadoop.mapred.ClusterStatus; @@ -191,7 +192,18 @@ public int getJobTrackerPort() throws UnsupportedOperationException { @Override public void shutdown() throws IOException { - mr.shutdown(); + MiniMRCluster.JobTrackerRunner runner = mr.getJobTrackerRunner(); + JobTracker tracker = runner.getJobTracker(); + if (tracker != null) { + for (JobInProgress running : tracker.getRunningJobs()) { + try { + running.kill(); + } catch (Exception e) { + // ignore + } + } + } + runner.shutdown(); } @Override