You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sqoop.apache.org by ja...@apache.org on 2015/12/16 20:26:56 UTC
sqoop git commit: SQOOP-2735: Sqoop2: Use job name in MSubmission
Repository: sqoop
Updated Branches:
refs/heads/sqoop2 060be9049 -> 0ab7c05e1
SQOOP-2735: Sqoop2: Use job name in MSubmission
(Colin Ma via Jarek Jarcec Cecho)
Project: http://git-wip-us.apache.org/repos/asf/sqoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/sqoop/commit/0ab7c05e
Tree: http://git-wip-us.apache.org/repos/asf/sqoop/tree/0ab7c05e
Diff: http://git-wip-us.apache.org/repos/asf/sqoop/diff/0ab7c05e
Branch: refs/heads/sqoop2
Commit: 0ab7c05e114d40903abe982ff9f2d59f1452d2f1
Parents: 060be90
Author: Jarek Jarcec Cecho <ja...@apache.org>
Authored: Wed Dec 16 20:26:15 2015 +0100
Committer: Jarek Jarcec Cecho <ja...@apache.org>
Committed: Wed Dec 16 20:26:15 2015 +0100
----------------------------------------------------------------------
.../org/apache/sqoop/json/SubmissionBean.java | 13 ++-------
.../org/apache/sqoop/model/MSubmission.java | 30 ++++++++++----------
.../apache/sqoop/json/TestSubmissionBean.java | 12 ++++----
.../org/apache/sqoop/driver/JobManager.java | 21 +++-----------
.../org/apache/sqoop/driver/TestJobManager.java | 12 ++++----
.../common/CommonRepositoryHandler.java | 23 +++++++++++++--
...RepositoryInsertUpdateDeleteSelectQuery.java | 24 ++++++++++++++--
.../derby/TestSubmissionHandling.java | 8 +++---
.../repository/mysql/MySqlTestCase.java | 2 +-
.../mysql/TestSubmissionHandling.java | 8 +++---
.../postgresql/PostgresqlTestCase.java | 2 +-
.../postgresql/TestSubmissionHandling.java | 8 +++---
.../authorization/AuthorizationEngine.java | 3 +-
.../apache/sqoop/handler/JobRequestHandler.java | 2 +-
.../sqoop/shell/ShowSubmissionFunction.java | 4 +--
.../org/apache/sqoop/shell/core/Constants.java | 8 +++---
.../sqoop/shell/utils/SubmissionDisplayer.java | 4 +--
.../main/resources/shell-resource.properties | 4 +--
.../org/apache/sqoop/shell/TestShowCommand.java | 12 ++++----
19 files changed, 106 insertions(+), 94 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/common/src/main/java/org/apache/sqoop/json/SubmissionBean.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/org/apache/sqoop/json/SubmissionBean.java b/common/src/main/java/org/apache/sqoop/json/SubmissionBean.java
index e6b300d..4040688 100644
--- a/common/src/main/java/org/apache/sqoop/json/SubmissionBean.java
+++ b/common/src/main/java/org/apache/sqoop/json/SubmissionBean.java
@@ -44,9 +44,7 @@ import org.json.simple.JSONObject;
public class SubmissionBean implements JsonBean {
private static final String SUBMISSION = "submission";
- @Deprecated
- private static final String JOB = "job";
- private static final String JOB_ID = "job-id";
+ private static final String JOB_NAME = "job-name";
private static final String CREATION_USER = "creation-user";
private static final String CREATION_DATE = "creation-date";
private static final String LAST_UPDATE_USER = "last-udpate-user";
@@ -104,8 +102,7 @@ public class SubmissionBean implements JsonBean {
private JSONObject extractSubmission(MSubmission submission) {
JSONObject object = new JSONObject();
- object.put(JOB, submission.getJobId());
- object.put(JOB_ID, submission.getJobId());
+ object.put(JOB_NAME, submission.getJobName());
object.put(STATUS, submission.getStatus().name());
object.put(PROGRESS, submission.getProgress());
@@ -176,11 +173,7 @@ public class SubmissionBean implements JsonBean {
private MSubmission restoreSubmission(Object obj) {
JSONObject object = (JSONObject) obj;
MSubmission submission = new MSubmission();
- Long jobId = JSONUtils.getLong(object, JOB_ID);
- if (jobId == null) {
- jobId = JSONUtils.getLong(object, JOB);
- }
- submission.setJobId(jobId);
+ submission.setJobName(JSONUtils.getString(object, JOB_NAME));
submission.setStatus(SubmissionStatus.valueOf(JSONUtils.getString(object, STATUS)));
submission.setProgress(JSONUtils.getDouble(object, PROGRESS));
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/common/src/main/java/org/apache/sqoop/model/MSubmission.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/org/apache/sqoop/model/MSubmission.java b/common/src/main/java/org/apache/sqoop/model/MSubmission.java
index 11110ae..44250c3 100644
--- a/common/src/main/java/org/apache/sqoop/model/MSubmission.java
+++ b/common/src/main/java/org/apache/sqoop/model/MSubmission.java
@@ -37,11 +37,11 @@ import java.util.Date;
public class MSubmission extends MAccountableEntity {
/**
- * Job id that this submission object belongs.
+ * Job name that this submission object belongs.
*
* This property is required and will be always present.
*/
- private long jobId;
+ private String jobName;
/**
* Last known submission status.
@@ -122,36 +122,36 @@ public class MSubmission extends MAccountableEntity {
progress = -1;
}
- public MSubmission(long jobId, Date creationDate, SubmissionStatus status) {
+ public MSubmission(String jobName, Date creationDate, SubmissionStatus status) {
this();
- this.jobId = jobId;
+ this.jobName = jobName;
this.status = status;
setCreationDate(creationDate);
}
- public MSubmission(long jobId) {
- this(jobId, new Date(), SubmissionStatus.BOOTING);
+ public MSubmission(String jobName) {
+ this(jobName, new Date(), SubmissionStatus.BOOTING);
}
- public MSubmission(long jobId, Date creationDate, SubmissionStatus status,
+ public MSubmission(String jobName, Date creationDate, SubmissionStatus status,
String externalId) {
- this(jobId, creationDate, status);
+ this(jobName, creationDate, status);
this.externalJobId = externalId;
}
- public MSubmission(long jobId, Date creationDate, SubmissionStatus status,
+ public MSubmission(String jobName, Date creationDate, SubmissionStatus status,
String externalId, String externalLink, Counters counters){
- this(jobId, creationDate, status, externalId);
+ this(jobName, creationDate, status, externalId);
this.externalLink = externalLink;
this.counters = counters;
}
- public void setJobId(long jobId) {
- this.jobId = jobId;
+ public String getJobName() {
+ return jobName;
}
- public long getJobId() {
- return jobId;
+ public void setJobName(String jobName) {
+ this.jobName = jobName;
}
public void setStatus(SubmissionStatus status) {
@@ -247,7 +247,7 @@ public class MSubmission extends MAccountableEntity {
@Override
public String toString() {
- return "MSubmission [jobId=" + jobId + ", status=" + status + ", externalId=" + externalJobId
+ return "MSubmission [jobName=" + jobName + ", status=" + status + ", externalId=" + externalJobId
+ ", progress=" + progress + ", counters=" + counters + ", externalLink=" + externalLink
+ ", error=" + error + ", fromSchema=" + fromSchema + ", toSchema=" + toSchema + "]";
}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/common/src/test/java/org/apache/sqoop/json/TestSubmissionBean.java
----------------------------------------------------------------------
diff --git a/common/src/test/java/org/apache/sqoop/json/TestSubmissionBean.java b/common/src/test/java/org/apache/sqoop/json/TestSubmissionBean.java
index 1fc2ae2..204c1de 100644
--- a/common/src/test/java/org/apache/sqoop/json/TestSubmissionBean.java
+++ b/common/src/test/java/org/apache/sqoop/json/TestSubmissionBean.java
@@ -54,24 +54,24 @@ public class TestSubmissionBean {
@Test
public void testTransferJobId() {
MSubmission source = new MSubmission();
- source.setJobId(666);
+ source.setJobName("jobName1");
MSubmission target = transfer(source);
- assertEquals(666, target.getJobId());
+ assertEquals("jobName1", target.getJobName());
List<MSubmission> sources = new ArrayList<MSubmission>();
MSubmission sourcex = new MSubmission();
- sourcex.setJobId(777);
+ sourcex.setJobName("jobName2");
sources.add(sourcex);
MSubmission sourcey = new MSubmission();
- sourcey.setJobId(888);
+ sourcey.setJobName("jobName3");
sources.add(sourcey);
List<MSubmission> targets = transfer(sources);
assertNotNull(targets.get(0));
- assertEquals(777, targets.get(0).getJobId());
+ assertEquals("jobName2", targets.get(0).getJobName());
assertNotNull(targets.get(1));
- assertEquals(888, targets.get(1).getJobId());
+ assertEquals("jobName3", targets.get(1).getJobName());
}
@Test
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/core/src/main/java/org/apache/sqoop/driver/JobManager.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/sqoop/driver/JobManager.java b/core/src/main/java/org/apache/sqoop/driver/JobManager.java
index 4f4b9d3..d3a750e 100644
--- a/core/src/main/java/org/apache/sqoop/driver/JobManager.java
+++ b/core/src/main/java/org/apache/sqoop/driver/JobManager.java
@@ -311,7 +311,7 @@ public class JobManager implements Reconfigurable {
if (!job.getEnabled()) {
throw new SqoopException(DriverError.DRIVER_0009, "Job: " + jobName);
}
- MSubmission mSubmission = createJobSubmission(ctx, job.getPersistenceId());
+ MSubmission mSubmission = createJobSubmission(ctx, job.getName());
JobRequest jobRequest = createJobRequest(mSubmission, job);
// Bootstrap job to execute in the configured execution engine
prepareJob(jobRequest);
@@ -463,8 +463,8 @@ public class JobManager implements Reconfigurable {
}
}
- MSubmission createJobSubmission(HttpEventContext ctx, long jobId) {
- MSubmission summary = new MSubmission(jobId);
+ MSubmission createJobSubmission(HttpEventContext ctx, String jobName) {
+ MSubmission summary = new MSubmission(jobName);
summary.setCreationUser(ctx.getUsername());
summary.setLastUpdateUser(ctx.getUsername());
return summary;
@@ -496,19 +496,6 @@ public class JobManager implements Reconfigurable {
return link;
}
- // TODO: this method should be removed when MSubmission link job with jobName
- MJob getJob(long jobId) {
- MJob job = RepositoryManager.getInstance().getRepository().findJob(jobId);
- if (job == null) {
- throw new SqoopException(DriverError.DRIVER_0004, "Unknown job id: " + jobId);
- }
-
- if (!job.getEnabled()) {
- throw new SqoopException(DriverError.DRIVER_0009, "Job: " + job.getName());
- }
- return job;
- }
-
MJob getJob(String jobName) {
MJob job = RepositoryManager.getInstance().getRepository().findJob(jobName);
if (job == null) {
@@ -580,7 +567,7 @@ public class JobManager implements Reconfigurable {
void invokeDestroyerOnJobSuccess(MSubmission submission) {
try {
- MJob job = getJob(submission.getJobId());
+ MJob job = getJob(submission.getJobName());
SqoopConnector fromConnector = getSqoopConnector(job.getFromConnectorName());
SqoopConnector toConnector = getSqoopConnector(job.getToConnectorName());
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/core/src/test/java/org/apache/sqoop/driver/TestJobManager.java
----------------------------------------------------------------------
diff --git a/core/src/test/java/org/apache/sqoop/driver/TestJobManager.java b/core/src/test/java/org/apache/sqoop/driver/TestJobManager.java
index 8da759e..ee88ddc 100644
--- a/core/src/test/java/org/apache/sqoop/driver/TestJobManager.java
+++ b/core/src/test/java/org/apache/sqoop/driver/TestJobManager.java
@@ -74,7 +74,7 @@ public class TestJobManager {
HttpEventContext testCtx = new HttpEventContext();
testCtx.setUsername("testUser");
- MSubmission jobSubmission = jobManager.createJobSubmission(testCtx, 1234L);
+ MSubmission jobSubmission = jobManager.createJobSubmission(testCtx, "jobName");
assertEquals(jobSubmission.getCreationUser(), "testUser");
assertEquals(jobSubmission.getLastUpdateUser(), "testUser");
}
@@ -173,17 +173,15 @@ public class TestJobManager {
@Test
public void testUnknownJob() {
- long testJobId = 555l;
- SqoopException exception = new SqoopException(DriverError.DRIVER_0004, "Unknown job id: "
- + testJobId);
+ SqoopException exception = new SqoopException(DriverError.DRIVER_0004, "Unknown job name: testJobName");
when(repositoryManagerMock.getRepository()).thenReturn(jdbcRepoMock);
- when(jdbcRepoMock.findJob(testJobId)).thenReturn(null);
+ when(jdbcRepoMock.findJob("testJobName")).thenReturn(null);
try {
- jobManager.getJob(testJobId);
+ jobManager.getJob("testJobName");
} catch (SqoopException ex) {
assertEquals(ex.getMessage(), exception.getMessage());
verify(repositoryManagerMock, times(1)).getRepository();
- verify(jdbcRepoMock, times(1)).findJob(testJobId);
+ verify(jdbcRepoMock, times(1)).findJob("testJobName");
}
}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/repository/repository-common/src/main/java/org/apache/sqoop/repository/common/CommonRepositoryHandler.java
----------------------------------------------------------------------
diff --git a/repository/repository-common/src/main/java/org/apache/sqoop/repository/common/CommonRepositoryHandler.java b/repository/repository-common/src/main/java/org/apache/sqoop/repository/common/CommonRepositoryHandler.java
index 13d8242..efbd533 100644
--- a/repository/repository-common/src/main/java/org/apache/sqoop/repository/common/CommonRepositoryHandler.java
+++ b/repository/repository-common/src/main/java/org/apache/sqoop/repository/common/CommonRepositoryHandler.java
@@ -636,7 +636,23 @@ public abstract class CommonRepositoryHandler extends JdbcRepositoryHandler {
}
} catch (SQLException ex) {
logException(ex);
- throw new SqoopException(CommonRepositoryError.COMMON_0036, ex);
+ throw new SqoopException(CommonRepositoryError.COMMON_0000, ex);
+ }
+ }
+
+ public Long findJobIdByName(String jobName, Connection conn) {
+ try (PreparedStatement stmt = conn.prepareStatement(crudQueries.getStmtSelectJobIdByName())) {
+ stmt.setString(1,jobName);
+ try (ResultSet rs = stmt.executeQuery()) {
+ if (rs.next()) {
+ return rs.getLong(1);
+ } else {
+ throw new SqoopException(CommonRepositoryError.COMMON_0028);
+ }
+ }
+ } catch (SQLException ex) {
+ logException(ex);
+ throw new SqoopException(CommonRepositoryError.COMMON_0000, ex);
}
}
@@ -888,9 +904,10 @@ public abstract class CommonRepositoryHandler extends JdbcRepositoryHandler {
@Override
public void createSubmission(MSubmission submission, Connection conn) {
int result;
+ Long jobId = findJobIdByName(submission.getJobName(), conn);
try (PreparedStatement stmt = conn.prepareStatement(crudQueries.getStmtInsertSubmission(),
Statement.RETURN_GENERATED_KEYS)) {
- stmt.setLong(1, submission.getJobId());
+ stmt.setLong(1, jobId);
stmt.setString(2, submission.getStatus().name());
stmt.setString(3, submission.getCreationUser());
stmt.setTimestamp(4, new Timestamp(submission.getCreationDate().getTime()));
@@ -1367,7 +1384,7 @@ public abstract class CommonRepositoryHandler extends JdbcRepositoryHandler {
MSubmission submission = new MSubmission();
submission.setPersistenceId(rs.getLong(1));
- submission.setJobId(rs.getLong(2));
+ submission.setJobName(rs.getString(12));
submission.setStatus(SubmissionStatus.valueOf(rs.getString(3)));
submission.setCreationUser(rs.getString(4));
submission.setCreationDate(rs.getTimestamp(5));
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/repository/repository-common/src/main/java/org/apache/sqoop/repository/common/CommonRepositoryInsertUpdateDeleteSelectQuery.java
----------------------------------------------------------------------
diff --git a/repository/repository-common/src/main/java/org/apache/sqoop/repository/common/CommonRepositoryInsertUpdateDeleteSelectQuery.java b/repository/repository-common/src/main/java/org/apache/sqoop/repository/common/CommonRepositoryInsertUpdateDeleteSelectQuery.java
index fa5a1c1..e1e23e2 100644
--- a/repository/repository-common/src/main/java/org/apache/sqoop/repository/common/CommonRepositoryInsertUpdateDeleteSelectQuery.java
+++ b/repository/repository-common/src/main/java/org/apache/sqoop/repository/common/CommonRepositoryInsertUpdateDeleteSelectQuery.java
@@ -536,8 +536,11 @@ public class CommonRepositoryInsertUpdateDeleteSelectQuery {
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_EXTERNAL_ID) + ", "
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_EXTERNAL_LINK) + ", "
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_SUMMARY) + ", "
- + CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_DETAILS)
+ + CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_DETAILS) + ", "
+ + CommonRepoUtils.escapeColumnName(COLUMN_SQB_NAME)
+ " FROM " + CommonRepoUtils.getTableName(SCHEMA_SQOOP, TABLE_SQ_SUBMISSION_NAME)
+ + " INNER JOIN " + CommonRepoUtils.getTableName(SCHEMA_SQOOP, TABLE_SQ_JOB_NAME)
+ + " ON " + CommonRepoUtils.escapeColumnName(COLUMN_SQS_JOB) + " = " + CommonRepoUtils.escapeColumnName(COLUMN_SQB_ID)
+ " WHERE " + CommonRepoUtils.escapeColumnName(COLUMN_SQS_STATUS) + " = ?";
// DML : Get all submissions
@@ -553,8 +556,11 @@ public class CommonRepositoryInsertUpdateDeleteSelectQuery {
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_EXTERNAL_ID) + ", "
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_EXTERNAL_LINK) + ", "
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_SUMMARY) + ", "
- + CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_DETAILS)
+ + CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_DETAILS) + ", "
+ + CommonRepoUtils.escapeColumnName(COLUMN_SQB_NAME)
+ " FROM " + CommonRepoUtils.getTableName(SCHEMA_SQOOP, TABLE_SQ_SUBMISSION_NAME)
+ + " INNER JOIN " + CommonRepoUtils.getTableName(SCHEMA_SQOOP, TABLE_SQ_JOB_NAME)
+ + " ON " + CommonRepoUtils.escapeColumnName(COLUMN_SQS_JOB) + " = " + CommonRepoUtils.escapeColumnName(COLUMN_SQB_ID)
+ " ORDER BY " + CommonRepoUtils.escapeColumnName(COLUMN_SQS_UPDATE_DATE) + " DESC";
// DML: Get submissions for a job
@@ -570,7 +576,8 @@ public class CommonRepositoryInsertUpdateDeleteSelectQuery {
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_EXTERNAL_ID) + ", "
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_EXTERNAL_LINK) + ", "
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_SUMMARY) + ", "
- + CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_DETAILS)
+ + CommonRepoUtils.escapeColumnName(COLUMN_SQS_ERROR_DETAILS) + ", "
+ + CommonRepoUtils.escapeColumnName(COLUMN_SQB_NAME)
+ " FROM " + CommonRepoUtils.getTableName(SCHEMA_SQOOP, TABLE_SQ_SUBMISSION_NAME)
+ " INNER JOIN " + CommonRepoUtils.getTableName(SCHEMA_SQOOP, TABLE_SQ_JOB_NAME)
+ " ON " + CommonRepoUtils.escapeColumnName(COLUMN_SQS_JOB) + " = " + CommonRepoUtils.escapeColumnName(COLUMN_SQB_ID)
@@ -578,6 +585,13 @@ public class CommonRepositoryInsertUpdateDeleteSelectQuery {
+ " ORDER BY " + CommonRepoUtils.escapeColumnName(COLUMN_SQS_UPDATE_DATE) + "DESC ,"
+ CommonRepoUtils.escapeColumnName(COLUMN_SQS_ID) + " DESC";
+ // DML Select link id by name
+ private static final String STMT_SELECT_JOB_ID_BY_NAME =
+ "SELECT "
+ + CommonRepoUtils.escapeColumnName(COLUMN_SQB_ID)
+ + " FROM " + CommonRepoUtils.getTableName(SCHEMA_SQOOP, TABLE_SQ_JOB_NAME)
+ + " WHERE " + CommonRepoUtils.escapeColumnName(COLUMN_SQB_NAME) + " = ?";
+
// DML: Select context type
private static final String STMT_SELECT_CONTEXT_TYPE =
"SELECT "
@@ -811,6 +825,10 @@ public class CommonRepositoryInsertUpdateDeleteSelectQuery {
public String getStmtSelectLinkIdByName() {return STMT_SELECT_LINK_ID_BY_NAME;}
+ public String getStmtSelectJobIdByName() {
+ return STMT_SELECT_JOB_ID_BY_NAME;
+ }
+
public String getStmtSelectLinkAll() {
return STMT_SELECT_LINK_ALL;
}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/repository/repository-derby/src/test/java/org/apache/sqoop/repository/derby/TestSubmissionHandling.java
----------------------------------------------------------------------
diff --git a/repository/repository-derby/src/test/java/org/apache/sqoop/repository/derby/TestSubmissionHandling.java b/repository/repository-derby/src/test/java/org/apache/sqoop/repository/derby/TestSubmissionHandling.java
index 621d4e1..e2c3eae 100644
--- a/repository/repository-derby/src/test/java/org/apache/sqoop/repository/derby/TestSubmissionHandling.java
+++ b/repository/repository-derby/src/test/java/org/apache/sqoop/repository/derby/TestSubmissionHandling.java
@@ -117,7 +117,7 @@ public class TestSubmissionHandling extends DerbyTestCase {
driverContext.setString("driver2", "value2");
MSubmission submission = new MSubmission();
- submission.setJobId(1);
+ submission.setJobName("JA0");
submission.setStatus(SubmissionStatus.RUNNING);
submission.setCreationDate(creationDate);
submission.setLastUpdateDate(updateDate);
@@ -141,7 +141,7 @@ public class TestSubmissionHandling extends DerbyTestCase {
submission = submissions.get(0);
- assertEquals(1, submission.getJobId());
+ assertEquals("JA0", submission.getJobName());
assertEquals(SubmissionStatus.RUNNING, submission.getStatus());
assertEquals(creationDate.getTime(), submission.getCreationDate().getTime());
assertEquals(updateDate.getTime(), submission.getLastUpdateDate().getTime());
@@ -188,7 +188,7 @@ public class TestSubmissionHandling extends DerbyTestCase {
assertEquals(submission.getDriverContext().getString("driver2"), "value2");
// Let's create second (simpler) connection
- submission = new MSubmission(1, new Date(), SubmissionStatus.SUCCEEDED, "job-x");
+ submission = new MSubmission("JA0", new Date(), SubmissionStatus.SUCCEEDED, "job-x");
handler.createSubmission(submission, getDerbyDatabaseConnection());
assertEquals(2, submission.getPersistenceId());
@@ -229,7 +229,7 @@ public class TestSubmissionHandling extends DerbyTestCase {
+ " it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happe"
+ "nsYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happens";
MSubmission submission = new MSubmission();
- submission.setJobId(1);
+ submission.setJobName("JA0");
submission.setStatus(SubmissionStatus.RUNNING);
submission.setCreationDate(new Date());
submission.setLastUpdateDate(new Date());
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/repository/repository-mysql/src/test/java/org/apache/sqoop/integration/repository/mysql/MySqlTestCase.java
----------------------------------------------------------------------
diff --git a/repository/repository-mysql/src/test/java/org/apache/sqoop/integration/repository/mysql/MySqlTestCase.java b/repository/repository-mysql/src/test/java/org/apache/sqoop/integration/repository/mysql/MySqlTestCase.java
index ede930f..1d4ceb7 100644
--- a/repository/repository-mysql/src/test/java/org/apache/sqoop/integration/repository/mysql/MySqlTestCase.java
+++ b/repository/repository-mysql/src/test/java/org/apache/sqoop/integration/repository/mysql/MySqlTestCase.java
@@ -117,7 +117,7 @@ abstract public class MySqlTestCase {
protected MSubmission getSubmission(MJob job,
SubmissionStatus submissionStatus) {
- MSubmission submission = new MSubmission(job.getPersistenceId(),
+ MSubmission submission = new MSubmission(job.getName(),
new Date(), submissionStatus);
fillSubmission(submission);
return submission;
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/repository/repository-mysql/src/test/java/org/apache/sqoop/integration/repository/mysql/TestSubmissionHandling.java
----------------------------------------------------------------------
diff --git a/repository/repository-mysql/src/test/java/org/apache/sqoop/integration/repository/mysql/TestSubmissionHandling.java b/repository/repository-mysql/src/test/java/org/apache/sqoop/integration/repository/mysql/TestSubmissionHandling.java
index b4f34b6..b9a1392 100644
--- a/repository/repository-mysql/src/test/java/org/apache/sqoop/integration/repository/mysql/TestSubmissionHandling.java
+++ b/repository/repository-mysql/src/test/java/org/apache/sqoop/integration/repository/mysql/TestSubmissionHandling.java
@@ -157,7 +157,7 @@ public class TestSubmissionHandling extends MySqlTestCase {
driverContext.setString("driver2", "value2");
MSubmission submission = new MSubmission();
- submission.setJobId(1);
+ submission.setJobName(JOB_A_NAME);
submission.setStatus(SubmissionStatus.RUNNING);
submission.setCreationDate(creationDate);
submission.setLastUpdateDate(updateDate);
@@ -183,7 +183,7 @@ public class TestSubmissionHandling extends MySqlTestCase {
submission = submissions.get(0);
- assertEquals(1, submission.getJobId());
+ assertEquals(JOB_A_NAME, submission.getJobName());
assertEquals(SubmissionStatus.RUNNING, submission.getStatus());
long exceptedData = creationDate.getTime();
long actualData = submission.getCreationDate().getTime();
@@ -240,7 +240,7 @@ public class TestSubmissionHandling extends MySqlTestCase {
assertEquals(submission.getDriverContext().getString("driver2"), "value2");
// Let's create second (simpler) connection
- submission = new MSubmission(1, new Date(), SubmissionStatus.SUCCEEDED,
+ submission = new MSubmission(JOB_A_NAME, new Date(), SubmissionStatus.SUCCEEDED,
"job-x");
handler.createSubmission(submission, provider.getConnection());
@@ -285,7 +285,7 @@ public class TestSubmissionHandling extends MySqlTestCase {
+ " it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happe"
+ "nsYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happens";
MSubmission submission = new MSubmission();
- submission.setJobId(1);
+ submission.setJobName(JOB_A_NAME);
submission.setStatus(SubmissionStatus.RUNNING);
submission.setCreationDate(new Date());
submission.setLastUpdateDate(new Date());
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/repository/repository-postgresql/src/test/java/org/apache/sqoop/integration/repository/postgresql/PostgresqlTestCase.java
----------------------------------------------------------------------
diff --git a/repository/repository-postgresql/src/test/java/org/apache/sqoop/integration/repository/postgresql/PostgresqlTestCase.java b/repository/repository-postgresql/src/test/java/org/apache/sqoop/integration/repository/postgresql/PostgresqlTestCase.java
index 1bab548..2311f8b 100644
--- a/repository/repository-postgresql/src/test/java/org/apache/sqoop/integration/repository/postgresql/PostgresqlTestCase.java
+++ b/repository/repository-postgresql/src/test/java/org/apache/sqoop/integration/repository/postgresql/PostgresqlTestCase.java
@@ -106,7 +106,7 @@ abstract public class PostgresqlTestCase {
}
protected MSubmission getSubmission(MJob job, SubmissionStatus submissionStatus) {
- MSubmission submission = new MSubmission(job.getPersistenceId(), new Date(), submissionStatus);
+ MSubmission submission = new MSubmission(job.getName(), new Date(), submissionStatus);
fillSubmission(submission);
return submission;
}
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/repository/repository-postgresql/src/test/java/org/apache/sqoop/integration/repository/postgresql/TestSubmissionHandling.java
----------------------------------------------------------------------
diff --git a/repository/repository-postgresql/src/test/java/org/apache/sqoop/integration/repository/postgresql/TestSubmissionHandling.java b/repository/repository-postgresql/src/test/java/org/apache/sqoop/integration/repository/postgresql/TestSubmissionHandling.java
index cd3367e..5a5c70e 100644
--- a/repository/repository-postgresql/src/test/java/org/apache/sqoop/integration/repository/postgresql/TestSubmissionHandling.java
+++ b/repository/repository-postgresql/src/test/java/org/apache/sqoop/integration/repository/postgresql/TestSubmissionHandling.java
@@ -152,7 +152,7 @@ public class TestSubmissionHandling extends PostgresqlTestCase {
driverContext.setString("driver2", "value2");
MSubmission submission = new MSubmission();
- submission.setJobId(1);
+ submission.setJobName(JOB_A_NAME);
submission.setStatus(SubmissionStatus.RUNNING);
submission.setCreationDate(creationDate);
submission.setLastUpdateDate(updateDate);
@@ -177,7 +177,7 @@ public class TestSubmissionHandling extends PostgresqlTestCase {
submission = submissions.get(0);
- assertEquals(1, submission.getJobId());
+ assertEquals(JOB_A_NAME, submission.getJobName());
assertEquals(SubmissionStatus.RUNNING, submission.getStatus());
assertEquals(creationDate, submission.getCreationDate());
assertEquals(updateDate, submission.getLastUpdateDate());
@@ -224,7 +224,7 @@ public class TestSubmissionHandling extends PostgresqlTestCase {
assertEquals(submission.getDriverContext().getString("driver2"), "value2");
// Let's create second (simpler) connection
- submission = new MSubmission(1, new Date(), SubmissionStatus.SUCCEEDED, "job-x");
+ submission = new MSubmission(JOB_A_NAME, new Date(), SubmissionStatus.SUCCEEDED, "job-x");
handler.createSubmission(submission, provider.getConnection());
assertEquals(2, submission.getPersistenceId());
@@ -265,7 +265,7 @@ public class TestSubmissionHandling extends PostgresqlTestCase {
+ " it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happe"
+ "nsYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happensYeah it happens";
MSubmission submission = new MSubmission();
- submission.setJobId(1);
+ submission.setJobName(JOB_A_NAME);
submission.setStatus(SubmissionStatus.RUNNING);
submission.setCreationDate(new Date());
submission.setLastUpdateDate(new Date());
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/security/src/main/java/org/apache/sqoop/security/authorization/AuthorizationEngine.java
----------------------------------------------------------------------
diff --git a/security/src/main/java/org/apache/sqoop/security/authorization/AuthorizationEngine.java b/security/src/main/java/org/apache/sqoop/security/authorization/AuthorizationEngine.java
index e7b7dac..091d1c4 100644
--- a/security/src/main/java/org/apache/sqoop/security/authorization/AuthorizationEngine.java
+++ b/security/src/main/java/org/apache/sqoop/security/authorization/AuthorizationEngine.java
@@ -149,8 +149,7 @@ public class AuthorizationEngine {
@Override
public boolean apply(MSubmission input) {
try {
- String jobName = getResourceName(MResource.TYPE.JOB, input.getJobId());
- checkPrivilege(doUserName, getPrivilege(MResource.TYPE.JOB, jobName, MPrivilege.ACTION.READ));
+ checkPrivilege(doUserName, getPrivilege(MResource.TYPE.JOB, input.getJobName(), MPrivilege.ACTION.READ));
// add valid submission
return true;
} catch (RuntimeException e) {
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/server/src/main/java/org/apache/sqoop/handler/JobRequestHandler.java
----------------------------------------------------------------------
diff --git a/server/src/main/java/org/apache/sqoop/handler/JobRequestHandler.java b/server/src/main/java/org/apache/sqoop/handler/JobRequestHandler.java
index 01516ed..7fa6a3b 100644
--- a/server/src/main/java/org/apache/sqoop/handler/JobRequestHandler.java
+++ b/server/src/main/java/org/apache/sqoop/handler/JobRequestHandler.java
@@ -407,7 +407,7 @@ public class JobRequestHandler implements RequestHandler {
ctx.getRequest().getRemoteAddr(), "status", "job", jobName);
MSubmission submission = JobManager.getInstance().status(jobName);
if (submission == null) {
- submission = new MSubmission(job.getPersistenceId(), new Date(), SubmissionStatus.NEVER_EXECUTED);
+ submission = new MSubmission(job.getName(), new Date(), SubmissionStatus.NEVER_EXECUTED);
}
return new SubmissionBean(submission);
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/shell/src/main/java/org/apache/sqoop/shell/ShowSubmissionFunction.java
----------------------------------------------------------------------
diff --git a/shell/src/main/java/org/apache/sqoop/shell/ShowSubmissionFunction.java b/shell/src/main/java/org/apache/sqoop/shell/ShowSubmissionFunction.java
index 45f3bdd..aeac76a 100644
--- a/shell/src/main/java/org/apache/sqoop/shell/ShowSubmissionFunction.java
+++ b/shell/src/main/java/org/apache/sqoop/shell/ShowSubmissionFunction.java
@@ -74,7 +74,7 @@ public class ShowSubmissionFunction extends SqoopFunction {
}
List<String> header = new LinkedList<String>();
- header.add(resourceString(Constants.RES_TABLE_HEADER_JOB_ID));
+ header.add(resourceString(Constants.RES_TABLE_HEADER_JOB_NAME));
header.add(resourceString(Constants.RES_TABLE_HEADER_EXTERNAL_ID));
header.add(resourceString(Constants.RES_TABLE_HEADER_STATUS));
header.add(resourceString(Constants.RES_TABLE_HEADER_DATE));
@@ -85,7 +85,7 @@ public class ShowSubmissionFunction extends SqoopFunction {
List<String> dates = new LinkedList<String>();
for (MSubmission submission : submissions) {
- jids.add(String.valueOf(submission.getJobId()));
+ jids.add(String.valueOf(submission.getJobName()));
eids.add(String.valueOf(submission.getExternalJobId()));
status.add(submission.getStatus().toString());
dates.add(submission.getLastUpdateDate().toString());
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/shell/src/main/java/org/apache/sqoop/shell/core/Constants.java
----------------------------------------------------------------------
diff --git a/shell/src/main/java/org/apache/sqoop/shell/core/Constants.java b/shell/src/main/java/org/apache/sqoop/shell/core/Constants.java
index c516ea7..9c57a2e 100644
--- a/shell/src/main/java/org/apache/sqoop/shell/core/Constants.java
+++ b/shell/src/main/java/org/apache/sqoop/shell/core/Constants.java
@@ -369,8 +369,8 @@ public class Constants {
"table.header.connector.from";
public static final String RES_TABLE_HEADER_TO_CONNECTOR =
"table.header.connector.to";
- public static final String RES_TABLE_HEADER_JOB_ID =
- "table.header.jid";
+ public static final String RES_TABLE_HEADER_JOB_NAME =
+ "table.header.job.name";
public static final String RES_TABLE_HEADER_EXTERNAL_ID =
"table.header.eid";
public static final String RES_TABLE_HEADER_STATUS =
@@ -430,8 +430,8 @@ public class Constants {
public static final String RES_SUBMISSION_SUBMISSION_DETAIL =
"submission.submission_detail";
- public static final String RES_SUBMISSION_JOB_ID =
- "submission.job_id";
+ public static final String RES_SUBMISSION_JOB_NAME =
+ "submission.job_name";
public static final String RES_SUBMISSION_CREATION_USER =
"submission.creation_user";
public static final String RES_SUBMISSION_CREATION_DATE =
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/shell/src/main/java/org/apache/sqoop/shell/utils/SubmissionDisplayer.java
----------------------------------------------------------------------
diff --git a/shell/src/main/java/org/apache/sqoop/shell/utils/SubmissionDisplayer.java b/shell/src/main/java/org/apache/sqoop/shell/utils/SubmissionDisplayer.java
index 3a78371..8be3715 100644
--- a/shell/src/main/java/org/apache/sqoop/shell/utils/SubmissionDisplayer.java
+++ b/shell/src/main/java/org/apache/sqoop/shell/utils/SubmissionDisplayer.java
@@ -43,8 +43,8 @@ public final class SubmissionDisplayer {
SimpleDateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT);
println("@|bold "+ resourceString(Constants.RES_SUBMISSION_SUBMISSION_DETAIL) +"|@");
- print(resourceString(Constants.RES_SUBMISSION_JOB_ID)+": ");
- println(submission.getJobId());
+ print(resourceString(Constants.RES_SUBMISSION_JOB_NAME)+": ");
+ println(submission.getJobName());
print(resourceString(Constants.RES_SUBMISSION_SERVER_URL)+": ");
println(getServerUrl());
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/shell/src/main/resources/shell-resource.properties
----------------------------------------------------------------------
diff --git a/shell/src/main/resources/shell-resource.properties b/shell/src/main/resources/shell-resource.properties
index df3e7f1..630c31d 100644
--- a/shell/src/main/resources/shell-resource.properties
+++ b/shell/src/main/resources/shell-resource.properties
@@ -216,7 +216,7 @@ table.header.supported_directions = Supported Directions
table.header.connector.name = Connector Name
table.header.connector.from = From Connector
table.header.connector.to = To Connector
-table.header.jid = Job Id
+table.header.job.name = Job Name
table.header.eid = External Id
table.header.status = Status
table.header.date = Last Update Date
@@ -249,7 +249,7 @@ config.displayer.input_sensitive = This input is sensitive
config.displayer.warning_message = There were warnings while create or update, but saved successfully.
submission.submission_detail = Submission details
-submission.job_id = Job ID
+submission.job_name = Job Name
submission.creation_user = Created by
submission.creation_date = Creation date
submission.update_user = Lastly updated by
http://git-wip-us.apache.org/repos/asf/sqoop/blob/0ab7c05e/shell/src/test/java/org/apache/sqoop/shell/TestShowCommand.java
----------------------------------------------------------------------
diff --git a/shell/src/test/java/org/apache/sqoop/shell/TestShowCommand.java b/shell/src/test/java/org/apache/sqoop/shell/TestShowCommand.java
index 000f518..8f8d3db 100644
--- a/shell/src/test/java/org/apache/sqoop/shell/TestShowCommand.java
+++ b/shell/src/test/java/org/apache/sqoop/shell/TestShowCommand.java
@@ -278,12 +278,12 @@ public class TestShowCommand {
@Test
public void testShowSubmission() {
- when(client.getSubmissions()).thenReturn(Arrays.asList(new MSubmission(1L)));
- when(client.getSubmissionsForJob(any(String.class))).thenReturn(Arrays.asList(new MSubmission(1L)));
+ when(client.getSubmissions()).thenReturn(Arrays.asList(new MSubmission("jobName")));
+ when(client.getSubmissionsForJob(any(String.class))).thenReturn(Arrays.asList(new MSubmission("jobName")));
- // show submission -details -name jobName
+ // show submission -details -job jobName
out.reset();
- Status status = (Status) showCmd.execute(Arrays.asList(Constants.FN_SUBMISSION, "-detail", "-name", "jobName"));
+ Status status = (Status) showCmd.execute(Arrays.asList(Constants.FN_SUBMISSION, "-detail", "-job", "jobName"));
Assert.assertTrue(status != null && status == Status.OK);
String str = new String(out.toByteArray());
Assert.assertTrue(str.contains("Submission details"));
@@ -300,7 +300,7 @@ public class TestShowCommand {
status = (Status) showCmd.execute(Arrays.asList(Constants.FN_SUBMISSION, "-job", "jobName"));
Assert.assertTrue(status != null && status == Status.OK);
str = new String(out.toByteArray());
- Assert.assertTrue(str.contains("Job Id"));
+ Assert.assertTrue(str.contains("Job Name"));
Assert.assertTrue(str.contains("External Id"));
Assert.assertTrue(str.contains("Status"));
Assert.assertTrue(str.contains("Last Update Date"));
@@ -310,7 +310,7 @@ public class TestShowCommand {
status = (Status) showCmd.execute(Arrays.asList(Constants.FN_SUBMISSION));
Assert.assertTrue(status != null && status == Status.OK);
str = new String(out.toByteArray());
- Assert.assertTrue(str.contains("Job Id"));
+ Assert.assertTrue(str.contains("Job Name"));
Assert.assertTrue(str.contains("External Id"));
Assert.assertTrue(str.contains("Status"));
Assert.assertTrue(str.contains("Last Update Date"));