You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by ay...@apache.org on 2021/03/19 09:07:54 UTC

[hadoop] branch branch-3.3 updated: HADOOP-17594. DistCp: Expose the JobId for applications executing through run method (#2786). Contributed by Ayush Saxena.

This is an automated email from the ASF dual-hosted git repository.

ayushsaxena pushed a commit to branch branch-3.3
in repository https://gitbox.apache.org/repos/asf/hadoop.git


The following commit(s) were added to refs/heads/branch-3.3 by this push:
     new b87c0ea  HADOOP-17594. DistCp: Expose the JobId for applications executing through run method (#2786). Contributed by Ayush Saxena.
b87c0ea is described below

commit b87c0ea7ebde3edc312dcc8938809610a914df7f
Author: Ayush Saxena <ay...@apache.org>
AuthorDate: Fri Mar 19 14:19:49 2021 +0530

    HADOOP-17594. DistCp: Expose the JobId for applications executing through run method (#2786). Contributed by Ayush Saxena.
    
    Signed-off-by: Mingliang Liu <li...@apache.org>
    Signed-off-by: Steve Loughran <st...@apache.org>
---
 .../src/main/java/org/apache/hadoop/tools/DistCp.java       |  2 ++
 .../hadoop/tools/contract/AbstractContractDistCpTest.java   | 13 +++++++++++++
 2 files changed, 15 insertions(+)

diff --git a/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/DistCp.java b/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/DistCp.java
index d50a1f3..21ef47e 100644
--- a/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/DistCp.java
+++ b/hadoop-tools/hadoop-distcp/src/main/java/org/apache/hadoop/tools/DistCp.java
@@ -214,6 +214,8 @@ public class DistCp extends Configured implements Tool {
     String jobID = job.getJobID().toString();
     job.getConfiguration().set(DistCpConstants.CONF_LABEL_DISTCP_JOB_ID,
         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);
 
     return job;
diff --git a/hadoop-tools/hadoop-distcp/src/test/java/org/apache/hadoop/tools/contract/AbstractContractDistCpTest.java b/hadoop-tools/hadoop-distcp/src/test/java/org/apache/hadoop/tools/contract/AbstractContractDistCpTest.java
index eeaf30a..1a40d78 100644
--- a/hadoop-tools/hadoop-distcp/src/test/java/org/apache/hadoop/tools/contract/AbstractContractDistCpTest.java
+++ b/hadoop-tools/hadoop-distcp/src/test/java/org/apache/hadoop/tools/contract/AbstractContractDistCpTest.java
@@ -19,6 +19,7 @@
 package org.apache.hadoop.tools.contract;
 
 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.util.Collections;
@@ -42,6 +43,7 @@ import org.apache.hadoop.tools.DistCp;
 import org.apache.hadoop.tools.DistCpConstants;
 import org.apache.hadoop.tools.DistCpOptions;
 import org.apache.hadoop.tools.mapred.CopyMapper;
+import org.apache.hadoop.tools.util.DistCpTestUtils;
 
 import org.junit.Before;
 import org.junit.Rule;
@@ -464,6 +466,17 @@ public abstract class AbstractContractDistCpTest
     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
    * levels.

---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-commits-help@hadoop.apache.org