MAPREDUCE-5355. Merging change r1499148 from trunk to branch-2.
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1499149 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
6384d35ab8
commit
6c703d6ef0
|
@ -469,6 +469,9 @@ Release 2.1.0-beta - 2013-07-02
|
||||||
MAPREDUCE-5349. TestClusterMapReduceTestCase and TestJobName fail on Windows
|
MAPREDUCE-5349. TestClusterMapReduceTestCase and TestJobName fail on Windows
|
||||||
in branch-2. (Chuan Liu via cnauroth)
|
in branch-2. (Chuan Liu via cnauroth)
|
||||||
|
|
||||||
|
MAPREDUCE-5355. MiniMRYarnCluster with localFs does not work on Windows.
|
||||||
|
(Chuan Liu via cnauroth)
|
||||||
|
|
||||||
MAPREDUCE-5291. Change MR App to use updated property names in
|
MAPREDUCE-5291. Change MR App to use updated property names in
|
||||||
container-log4j.properties. (Zhijie Shen via sseth)
|
container-log4j.properties. (Zhijie Shen via sseth)
|
||||||
|
|
||||||
|
|
|
@ -26,6 +26,7 @@ import org.apache.commons.logging.LogFactory;
|
||||||
import org.apache.hadoop.conf.Configuration;
|
import org.apache.hadoop.conf.Configuration;
|
||||||
import org.apache.hadoop.fs.CommonConfigurationKeys;
|
import org.apache.hadoop.fs.CommonConfigurationKeys;
|
||||||
import org.apache.hadoop.fs.FileContext;
|
import org.apache.hadoop.fs.FileContext;
|
||||||
|
import org.apache.hadoop.fs.LocalFileSystem;
|
||||||
import org.apache.hadoop.fs.Path;
|
import org.apache.hadoop.fs.Path;
|
||||||
import org.apache.hadoop.mapred.LocalContainerLauncher;
|
import org.apache.hadoop.mapred.LocalContainerLauncher;
|
||||||
import org.apache.hadoop.mapred.ShuffleHandler;
|
import org.apache.hadoop.mapred.ShuffleHandler;
|
||||||
|
@ -87,6 +88,21 @@ public class MiniMRYarnCluster extends MiniYARNCluster {
|
||||||
try {
|
try {
|
||||||
Path stagingPath = FileContext.getFileContext(conf).makeQualified(
|
Path stagingPath = FileContext.getFileContext(conf).makeQualified(
|
||||||
new Path(conf.get(MRJobConfig.MR_AM_STAGING_DIR)));
|
new Path(conf.get(MRJobConfig.MR_AM_STAGING_DIR)));
|
||||||
|
/*
|
||||||
|
* Re-configure the staging path on Windows if the file system is localFs.
|
||||||
|
* We need to use a absolute path that contains the drive letter. The unit
|
||||||
|
* test could run on a different drive than the AM. We can run into the
|
||||||
|
* issue that job files are localized to the drive where the test runs on,
|
||||||
|
* while the AM starts on a different drive and fails to find the job
|
||||||
|
* metafiles. Using absolute path can avoid this ambiguity.
|
||||||
|
*/
|
||||||
|
if (Path.WINDOWS) {
|
||||||
|
if (LocalFileSystem.class.isInstance(stagingPath.getFileSystem(conf))) {
|
||||||
|
conf.set(MRJobConfig.MR_AM_STAGING_DIR,
|
||||||
|
new File(conf.get(MRJobConfig.MR_AM_STAGING_DIR))
|
||||||
|
.getAbsolutePath());
|
||||||
|
}
|
||||||
|
}
|
||||||
FileContext fc=FileContext.getFileContext(stagingPath.toUri(), conf);
|
FileContext fc=FileContext.getFileContext(stagingPath.toUri(), conf);
|
||||||
if (fc.util().exists(stagingPath)) {
|
if (fc.util().exists(stagingPath)) {
|
||||||
LOG.info(stagingPath + " exists! deleting...");
|
LOG.info(stagingPath + " exists! deleting...");
|
||||||
|
|
Loading…
Reference in New Issue