HADOOP-17594. DistCp: Expose the JobId for applications executing through run method (#2786). Contributed by Ayush Saxena.
Signed-off-by: Mingliang Liu <liuml07@apache.org> Signed-off-by: Steve Loughran <stevel@apache.org>
This commit is contained in:
parent
27944772d3
commit
b87c0ea7eb
|
@ -214,6 +214,8 @@ public class DistCp extends Configured implements Tool {
|
||||||
String jobID = job.getJobID().toString();
|
String jobID = job.getJobID().toString();
|
||||||
job.getConfiguration().set(DistCpConstants.CONF_LABEL_DISTCP_JOB_ID,
|
job.getConfiguration().set(DistCpConstants.CONF_LABEL_DISTCP_JOB_ID,
|
||||||
jobID);
|
jobID);
|
||||||
|
// Set the jobId for the applications running through run method.
|
||||||
|
getConf().set(DistCpConstants.CONF_LABEL_DISTCP_JOB_ID, jobID);
|
||||||
LOG.info("DistCp job-id: " + jobID);
|
LOG.info("DistCp job-id: " + jobID);
|
||||||
|
|
||||||
return job;
|
return job;
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
package org.apache.hadoop.tools.contract;
|
package org.apache.hadoop.tools.contract;
|
||||||
|
|
||||||
import static org.apache.hadoop.fs.contract.ContractTestUtils.*;
|
import static org.apache.hadoop.fs.contract.ContractTestUtils.*;
|
||||||
|
import static org.apache.hadoop.tools.DistCpConstants.CONF_LABEL_DISTCP_JOB_ID;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
@ -42,6 +43,7 @@ import org.apache.hadoop.tools.DistCp;
|
||||||
import org.apache.hadoop.tools.DistCpConstants;
|
import org.apache.hadoop.tools.DistCpConstants;
|
||||||
import org.apache.hadoop.tools.DistCpOptions;
|
import org.apache.hadoop.tools.DistCpOptions;
|
||||||
import org.apache.hadoop.tools.mapred.CopyMapper;
|
import org.apache.hadoop.tools.mapred.CopyMapper;
|
||||||
|
import org.apache.hadoop.tools.util.DistCpTestUtils;
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Rule;
|
import org.junit.Rule;
|
||||||
|
@ -464,6 +466,17 @@ public abstract class AbstractContractDistCpTest
|
||||||
largeFiles(remoteFS, remoteDir, localFS, localDir);
|
largeFiles(remoteFS, remoteDir, localFS, localDir);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testSetJobId() throws Exception {
|
||||||
|
describe("check jobId is set in the conf");
|
||||||
|
remoteFS.create(new Path(remoteDir, "file1")).close();
|
||||||
|
DistCpTestUtils
|
||||||
|
.assertRunDistCp(DistCpConstants.SUCCESS, remoteDir.toString(),
|
||||||
|
localDir.toString(), null, conf);
|
||||||
|
assertNotNull("DistCp job id isn't set",
|
||||||
|
conf.get(CONF_LABEL_DISTCP_JOB_ID));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Executes a DistCp using a file system sub-tree with multiple nesting
|
* Executes a DistCp using a file system sub-tree with multiple nesting
|
||||||
* levels.
|
* levels.
|
||||||
|
|
Loading…
Reference in New Issue