Repository: oozie Updated Branches: refs/heads/master 0050d03eb -> 885676214
OOZIE-1719 v1/jobs api returns null for parentId even when it exists (ryota) Project: http://git-wip-us.apache.org/repos/asf/oozie/repo Commit: http://git-wip-us.apache.org/repos/asf/oozie/commit/88567621 Tree: http://git-wip-us.apache.org/repos/asf/oozie/tree/88567621 Diff: http://git-wip-us.apache.org/repos/asf/oozie/diff/88567621 Branch: refs/heads/master Commit: 8856762147ab203871626385853c516e0a5b9a94 Parents: 0050d03 Author: egashira <[email protected]> Authored: Mon Apr 14 12:01:56 2014 -0700 Committer: egashira <[email protected]> Committed: Mon Apr 14 12:01:56 2014 -0700 ---------------------------------------------------------------------- .../java/org/apache/oozie/WorkflowJobBean.java | 3 +-- .../jpa/WorkflowsJobGetJPAExecutor.java | 5 ++++- .../jpa/TestWorkflowsJobGetJPAExecutor.java | 23 +++++++++++++++++--- release-log.txt | 1 + 4 files changed, 26 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/oozie/blob/88567621/core/src/main/java/org/apache/oozie/WorkflowJobBean.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/oozie/WorkflowJobBean.java b/core/src/main/java/org/apache/oozie/WorkflowJobBean.java index 8a731f4..0b8ee96 100644 --- a/core/src/main/java/org/apache/oozie/WorkflowJobBean.java +++ b/core/src/main/java/org/apache/oozie/WorkflowJobBean.java @@ -77,8 +77,7 @@ import org.json.simple.JSONObject; @NamedQuery(name = "GET_WORKFLOWS", query = "select OBJECT(w) from WorkflowJobBean w order by w.startTimestamp desc"), - @NamedQuery(name = "GET_WORKFLOWS_COLUMNS", query = "select w.id, w.appName, w.statusStr, w.run, w.user, w.group, w.createdTimestamp, " - + "w.startTimestamp, w.lastModifiedTimestamp, w.endTimestamp, w.externalId from WorkflowJobBean w order by w.createdTimestamp desc"), + @NamedQuery(name = "GET_WORKFLOWS_COLUMNS", query = "select w.id, w.appName, w.statusStr, w.run, w.user, w.group, w.createdTimestamp, w.startTimestamp, w.lastModifiedTimestamp, w.endTimestamp, w.externalId, w.parentId from WorkflowJobBean w order by w.createdTimestamp desc"), @NamedQuery(name = "GET_WORKFLOWS_COUNT", query = "select count(w) from WorkflowJobBean w"), http://git-wip-us.apache.org/repos/asf/oozie/blob/88567621/core/src/main/java/org/apache/oozie/executor/jpa/WorkflowsJobGetJPAExecutor.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/apache/oozie/executor/jpa/WorkflowsJobGetJPAExecutor.java b/core/src/main/java/org/apache/oozie/executor/jpa/WorkflowsJobGetJPAExecutor.java index c4bfa8c..6750501 100644 --- a/core/src/main/java/org/apache/oozie/executor/jpa/WorkflowsJobGetJPAExecutor.java +++ b/core/src/main/java/org/apache/oozie/executor/jpa/WorkflowsJobGetJPAExecutor.java @@ -40,7 +40,7 @@ import org.apache.openjpa.persistence.jdbc.ResultSetType; public class WorkflowsJobGetJPAExecutor implements JPAExecutor<WorkflowsInfo> { private static final String seletStr = "Select w.id, w.appName, w.statusStr, w.run, w.user, w.group, w.createdTimestamp, " - + "w.startTimestamp, w.lastModifiedTimestamp, w.endTimestamp, w.externalId from WorkflowJobBean w"; + + "w.startTimestamp, w.lastModifiedTimestamp, w.endTimestamp, w.externalId, w.parentId from WorkflowJobBean w"; private static final String countStr = "Select count(w) from WorkflowJobBean w"; private final Map<String, List<String>> filter; @@ -300,6 +300,9 @@ public class WorkflowsJobGetJPAExecutor implements JPAExecutor<WorkflowsInfo> { if (arr[10] != null) { wfBean.setExternalId((String) arr[10]); } + if (arr[11] != null) { + wfBean.setParentId((String) arr[11]); + } return wfBean; } } http://git-wip-us.apache.org/repos/asf/oozie/blob/88567621/core/src/test/java/org/apache/oozie/executor/jpa/TestWorkflowsJobGetJPAExecutor.java ---------------------------------------------------------------------- diff --git a/core/src/test/java/org/apache/oozie/executor/jpa/TestWorkflowsJobGetJPAExecutor.java b/core/src/test/java/org/apache/oozie/executor/jpa/TestWorkflowsJobGetJPAExecutor.java index 1993d29..dd21d85 100644 --- a/core/src/test/java/org/apache/oozie/executor/jpa/TestWorkflowsJobGetJPAExecutor.java +++ b/core/src/test/java/org/apache/oozie/executor/jpa/TestWorkflowsJobGetJPAExecutor.java @@ -26,9 +26,11 @@ import org.apache.oozie.WorkflowJobBean; import org.apache.oozie.WorkflowsInfo; import org.apache.oozie.client.OozieClient; import org.apache.oozie.client.WorkflowJob; +import org.apache.oozie.executor.jpa.WorkflowJobQueryExecutor.WorkflowJobQuery; import org.apache.oozie.service.JPAService; import org.apache.oozie.service.Services; import org.apache.oozie.test.XDataTestCase; +import org.apache.oozie.workflow.WorkflowException; import org.apache.oozie.workflow.WorkflowInstance; public class TestWorkflowsJobGetJPAExecutor extends XDataTestCase { @@ -51,7 +53,7 @@ public class TestWorkflowsJobGetJPAExecutor extends XDataTestCase { WorkflowJobBean workflowJob = addRecordToWfJobTable(WorkflowJob.Status.PREP, WorkflowInstance.Status.PREP); addRecordToWfJobTable(WorkflowJob.Status.PREP, WorkflowInstance.Status.PREP); _testGetWFInfos(); - _testGetWFInfoForId(workflowJob.getId()); + _testGetWFInfoForId(workflowJob); System.out.println("testWfJobsGet Successful"); } @@ -73,16 +75,31 @@ public class TestWorkflowsJobGetJPAExecutor extends XDataTestCase { assertEquals(2, wfBeans.size()); } - private void _testGetWFInfoForId(String jobId) throws Exception { + private void _testGetWFInfoForId(WorkflowJobBean wfBean) throws Exception { JPAService jpaService = Services.get().get(JPAService.class); assertNotNull(jpaService); Map<String, List<String>> filter = new HashMap<String, List<String>>(); + wfBean.setParentId("test-parent-C"); + WorkflowJobQueryExecutor.getInstance().executeUpdate(WorkflowJobQuery.UPDATE_WORKFLOW_PARENT_MODIFIED, wfBean); List<String> jobIdList = new ArrayList<String>(); - jobIdList.add(jobId); + jobIdList.add(wfBean.getId()); filter.put(OozieClient.FILTER_ID, jobIdList); WorkflowsJobGetJPAExecutor wfGetCmd = new WorkflowsJobGetJPAExecutor(filter, 1, 1); WorkflowsInfo wfInfo = jpaService.execute(wfGetCmd); assertNotNull(wfInfo); assertEquals(wfInfo.getWorkflows().size(), 1); + WorkflowJobBean retBean = wfInfo.getWorkflows().get(0); + assertEquals(wfBean.getId(), retBean.getId()); + assertEquals(wfBean.getAppName(), retBean.getAppName()); + assertEquals(wfBean.getStatusStr(), retBean.getStatusStr()); + assertEquals(wfBean.getRun(), retBean.getRun()); + assertEquals(wfBean.getUser(), retBean.getUser()); + assertEquals(wfBean.getGroup(), retBean.getGroup()); + assertEquals(wfBean.getCreatedTime(), retBean.getCreatedTime()); + assertEquals(wfBean.getStartTime(), retBean.getStartTime()); + assertEquals(wfBean.getLastModifiedTime(), retBean.getLastModifiedTime()); + assertEquals(wfBean.getEndTime(), retBean.getEndTime()); + assertEquals(wfBean.getExternalId(), retBean.getExternalId()); + assertEquals(wfBean.getParentId(), retBean.getParentId()); } } http://git-wip-us.apache.org/repos/asf/oozie/blob/88567621/release-log.txt ---------------------------------------------------------------------- diff --git a/release-log.txt b/release-log.txt index 8cff400..3db5020 100644 --- a/release-log.txt +++ b/release-log.txt @@ -1,5 +1,6 @@ -- Oozie 4.1.0 release (trunk - unreleased) +OOZIE-1719 v1/jobs api returns null for parentId even when it exists (ryota) OOZIE-1773 bulk API returns total = 0 when it's not (ryota) OOZIE-1774 Expected/Actual Duration on UI SLA Tab doesn't show correct information (ryota) OOZIE-1754 add order(sort) option and exclude filter for coord job Info (ryota)
