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

shaofengshi pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/kylin.git


The following commit(s) were added to refs/heads/master by this push:
     new ddc51f3  KYLIN-3918: Add project name in cube and job pages
ddc51f3 is described below

commit ddc51f3307616a33536c76ff61023b7634e3d289
Author: Liu Shaohui <liushao...@xiaomi.com>
AuthorDate: Wed Mar 27 20:08:57 2019 +0800

    KYLIN-3918: Add project name in cube and job pages
---
 core-job/src/main/java/org/apache/kylin/job/JobInstance.java  | 11 ++++++++++-
 .../org/apache/kylin/engine/mr/common/JobInfoConverter.java   |  2 ++
 .../main/java/org/apache/kylin/rest/service/JobService.java   |  3 +++
 .../main/java/org/apache/kylin/tool/JobInstanceExtractor.java |  1 +
 webapp/app/js/model/cubeConfig.js                             |  3 ++-
 webapp/app/partials/cubes/cubes.html                          |  1 +
 webapp/app/partials/jobs/job_steps.html                       |  6 ++++++
 7 files changed, 25 insertions(+), 2 deletions(-)

diff --git a/core-job/src/main/java/org/apache/kylin/job/JobInstance.java 
b/core-job/src/main/java/org/apache/kylin/job/JobInstance.java
index ef649ab..24be9d0 100644
--- a/core-job/src/main/java/org/apache/kylin/job/JobInstance.java
+++ b/core-job/src/main/java/org/apache/kylin/job/JobInstance.java
@@ -46,7 +46,8 @@ public class JobInstance extends RootPersistentEntity 
implements Comparable<JobI
 
     @JsonProperty("name")
     private String name;
-
+    @JsonProperty("projectName")
+    private String projectName;
     @JsonProperty("type")
     private CubeBuildTypeEnum type; // java implementation
     @JsonProperty("duration")
@@ -157,6 +158,14 @@ public class JobInstance extends RootPersistentEntity 
implements Comparable<JobI
         this.name = name;
     }
 
+    public String getProjectName() {
+        return projectName;
+    }
+
+    public void setProjectName(String projectName) {
+        this.projectName = projectName;
+    }
+
     public CubeBuildTypeEnum getType() {
         return type;
     }
diff --git 
a/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/JobInfoConverter.java
 
b/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/JobInfoConverter.java
index 1b9b2d6..53246fa 100644
--- 
a/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/JobInfoConverter.java
+++ 
b/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/JobInfoConverter.java
@@ -79,6 +79,7 @@ public class JobInfoConverter {
 
         final JobInstance result = new JobInstance();
         result.setName(job.getName());
+        result.setProjectName(cubeJob.getProjectName());
         result.setRelatedCube(cube != null ? cube.getName() : 
CubingExecutableUtil.getCubeName(cubeJob.getParams()));
         result.setDisplayCubeName(cube != null ? cube.getDisplayName() : 
CubingExecutableUtil.getCubeName(cubeJob.getParams()));
         
result.setRelatedSegment(CubingExecutableUtil.getSegmentId(cubeJob.getParams()));
@@ -115,6 +116,7 @@ public class JobInfoConverter {
 
         final JobInstance result = new JobInstance();
         result.setName(job.getName());
+        result.setProjectName(job.getProjectName());
         
result.setRelatedCube(CubingExecutableUtil.getCubeName(job.getParams()));
         
result.setDisplayCubeName(CubingExecutableUtil.getCubeName(job.getParams()));
         result.setLastModified(output.getLastModified());
diff --git 
a/server-base/src/main/java/org/apache/kylin/rest/service/JobService.java 
b/server-base/src/main/java/org/apache/kylin/rest/service/JobService.java
index 8182f3d..a4f8b13 100644
--- a/server-base/src/main/java/org/apache/kylin/rest/service/JobService.java
+++ b/server-base/src/main/java/org/apache/kylin/rest/service/JobService.java
@@ -479,6 +479,7 @@ public class JobService extends BasicService implements 
InitializingBean {
         Output output = cubeJob.getOutput();
         final JobInstance result = new JobInstance();
         result.setName(job.getName());
+        result.setProjectName(cubeJob.getProjectName());
         if (cube != null) {
             result.setRelatedCube(cube.getName());
             result.setDisplayCubeName(cube.getDisplayName());
@@ -513,6 +514,7 @@ public class JobService extends BasicService implements 
InitializingBean {
         Output output = job.getOutput();
         final JobInstance result = new JobInstance();
         result.setName(job.getName());
+        result.setProjectName(job.getProjectName());
         
result.setRelatedCube(CubingExecutableUtil.getCubeName(job.getParams()));
         
result.setRelatedSegment(CubingExecutableUtil.getSegmentId(job.getParams()));
         result.setLastModified(job.getLastModified());
@@ -546,6 +548,7 @@ public class JobService extends BasicService implements 
InitializingBean {
         Output output = checkpointExecutable.getOutput();
         final JobInstance result = new JobInstance();
         result.setName(job.getName());
+        result.setProjectName(checkpointExecutable.getProjectName());
         
result.setRelatedCube(CubingExecutableUtil.getCubeName(job.getParams()));
         
result.setDisplayCubeName(CubingExecutableUtil.getCubeName(job.getParams()));
         result.setLastModified(job.getLastModified());
diff --git a/tool/src/main/java/org/apache/kylin/tool/JobInstanceExtractor.java 
b/tool/src/main/java/org/apache/kylin/tool/JobInstanceExtractor.java
index 5b58c4a..54d979c 100644
--- a/tool/src/main/java/org/apache/kylin/tool/JobInstanceExtractor.java
+++ b/tool/src/main/java/org/apache/kylin/tool/JobInstanceExtractor.java
@@ -130,6 +130,7 @@ public class JobInstanceExtractor extends 
AbstractInfoExtractor {
         Output output = outputs.get(cubeJob.getId());
         final JobInstance result = new JobInstance();
         result.setName(cubeJob.getName());
+        result.setProjectName(cubeJob.getProjectName());
         if (cube != null) {
             result.setRelatedCube(cube.getName());
             result.setDisplayCubeName(cube.getDisplayName());
diff --git a/webapp/app/js/model/cubeConfig.js 
b/webapp/app/js/model/cubeConfig.js
index a83d4c9..84101ac 100644
--- a/webapp/app/js/model/cubeConfig.js
+++ b/webapp/app/js/model/cubeConfig.js
@@ -80,6 +80,7 @@ KylinApp.constant('cubeConfig', {
   theaditems: [
     {attr: 'name', name: 'Name'},
     {attr: 'status', name: 'Status'},
+    {attr: 'project', name: 'Project'},
     {attr: 'size_kb', name: 'Cube Size'},
     {attr: 'input_records_count', name: 'Source Records'},
     {attr: 'last_build_time', name: 'Last Build Time'},
@@ -200,4 +201,4 @@ KylinApp.constant('cubeConfig', {
       'left': '-12px'
     }
   }
-});
\ No newline at end of file
+});
diff --git a/webapp/app/partials/cubes/cubes.html 
b/webapp/app/partials/cubes/cubes.html
index 856ff5c..fd176f7 100644
--- a/webapp/app/partials/cubes/cubes.html
+++ b/webapp/app/partials/cubes/cubes.html
@@ -70,6 +70,7 @@
                     {{ cube.status}}
                 </span>
             </td>
+            <td>{{ cube.project}}</td>
             <td><span tooltip-html-unsafe="<div style='text-align:left'>
                 Source Table Size: {{dataSize(cube.input_records_size)}}<br/>
                 Expansion Rate: {{(cube.input_records_size>0? 
cube.size_kb*1024/cube.input_records_size : 0) * 100 | number:2}}%
diff --git a/webapp/app/partials/jobs/job_steps.html 
b/webapp/app/partials/jobs/job_steps.html
index 0c64e15..e26c4c3 100644
--- a/webapp/app/partials/jobs/job_steps.html
+++ b/webapp/app/partials/jobs/job_steps.html
@@ -41,6 +41,12 @@
                             </td>
                         </tr>
                         <tr>
+                          <td><b>Project Name</b></td>
+                          <td style="max-width: 180px;word-wrap: 
break-word;word-break: normal;">
+                            {{state.selectedJob.projectName}}
+                          </td>
+                        </tr>
+                        <tr>
                             <td><b>Status</b></td>
                             <td>
                                 <span class="label"

Reply via email to