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

wuzhiguo pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/bigtop-manager.git


The following commit(s) were added to refs/heads/main by this push:
     new 8397cafb BIGTOP-4306: Add unique name to cluster (#129)
8397cafb is described below

commit 8397cafbace744f57129d4078cf836c932846882
Author: Zhiguo Wu <[email protected]>
AuthorDate: Thu Dec 19 09:47:34 2024 +0800

    BIGTOP-4306: Add unique name to cluster (#129)
---
 .../common/message/entity/pojo/ClusterInfo.java       |  2 ++
 .../org/apache/bigtop/manager/dao/po/ClusterPO.java   |  3 +++
 .../src/main/resources/mapper/mysql/ClusterMapper.xml |  4 ++--
 .../src/main/resources/mapper/mysql/HostMapper.xml    | 19 ++++++-------------
 .../resources/mapper/postgresql/ClusterMapper.xml     |  4 ++--
 .../main/resources/mapper/postgresql/HostMapper.xml   |  7 ++++---
 .../server/command/task/CacheFileUpdateTask.java      |  1 +
 .../bigtop/manager/server/model/dto/ClusterDTO.java   |  2 ++
 .../server/model/dto/command/ClusterCommandDTO.java   |  2 ++
 .../server/model/req/command/ClusterCommandReq.java   |  4 ++++
 .../bigtop/manager/server/model/vo/ClusterVO.java     |  2 ++
 .../src/main/resources/ddl/MySQL-DDL-CREATE.sql       |  3 ++-
 .../src/main/resources/ddl/PostgreSQL-DDL-CREATE.sql  |  4 +++-
 13 files changed, 35 insertions(+), 22 deletions(-)

diff --git 
a/bigtop-manager-common/src/main/java/org/apache/bigtop/manager/common/message/entity/pojo/ClusterInfo.java
 
b/bigtop-manager-common/src/main/java/org/apache/bigtop/manager/common/message/entity/pojo/ClusterInfo.java
index 1c750c73..80d1b6d2 100644
--- 
a/bigtop-manager-common/src/main/java/org/apache/bigtop/manager/common/message/entity/pojo/ClusterInfo.java
+++ 
b/bigtop-manager-common/src/main/java/org/apache/bigtop/manager/common/message/entity/pojo/ClusterInfo.java
@@ -23,6 +23,8 @@ import lombok.Data;
 @Data
 public class ClusterInfo {
 
+    private String name;
+
     private String userGroup;
 
     private String rootDir;
diff --git 
a/bigtop-manager-dao/src/main/java/org/apache/bigtop/manager/dao/po/ClusterPO.java
 
b/bigtop-manager-dao/src/main/java/org/apache/bigtop/manager/dao/po/ClusterPO.java
index b3d62f74..368908d7 100644
--- 
a/bigtop-manager-dao/src/main/java/org/apache/bigtop/manager/dao/po/ClusterPO.java
+++ 
b/bigtop-manager-dao/src/main/java/org/apache/bigtop/manager/dao/po/ClusterPO.java
@@ -39,6 +39,9 @@ public class ClusterPO extends BasePO implements Serializable 
{
     @Column(name = "name")
     private String name;
 
+    @Column(name = "display_name")
+    private String displayName;
+
     @Column(name = "desc")
     private String desc;
 
diff --git 
a/bigtop-manager-dao/src/main/resources/mapper/mysql/ClusterMapper.xml 
b/bigtop-manager-dao/src/main/resources/mapper/mysql/ClusterMapper.xml
index cd8e6df2..df0035bc 100644
--- a/bigtop-manager-dao/src/main/resources/mapper/mysql/ClusterMapper.xml
+++ b/bigtop-manager-dao/src/main/resources/mapper/mysql/ClusterMapper.xml
@@ -24,10 +24,10 @@
 <mapper namespace="org.apache.bigtop.manager.dao.repository.ClusterDao">
 
     <sql id="baseColumns">
-        id, name, `desc`, type, user_group, root_dir, status
+        id, name, display_name, `desc`, type, user_group, root_dir, status
     </sql>
     <sql id="baseColumnsV2">
-        ${alias}.id, ${alias}.name, ${alias}.`desc`, ${alias}.type, 
${alias}.user_group, ${alias}.root_dir, ${alias}.status
+        ${alias}.id, ${alias}.name, ${alias}.display_name, ${alias}.`desc`, 
${alias}.type, ${alias}.user_group, ${alias}.root_dir, ${alias}.status
     </sql>
 
     <select id="findDetailsById" 
resultType="org.apache.bigtop.manager.dao.po.ClusterPO">
diff --git a/bigtop-manager-dao/src/main/resources/mapper/mysql/HostMapper.xml 
b/bigtop-manager-dao/src/main/resources/mapper/mysql/HostMapper.xml
index 9fa1a41f..17bd3826 100644
--- a/bigtop-manager-dao/src/main/resources/mapper/mysql/HostMapper.xml
+++ b/bigtop-manager-dao/src/main/resources/mapper/mysql/HostMapper.xml
@@ -40,7 +40,7 @@
         select
         <include refid="baseColumnsV2">
             <property name="alias" value="h"/>
-        </include>, c.name as cluster_name, count(comp.id) as component_num
+        </include>, c.display_name as cluster_name, count(comp.id) as 
component_num
         from host h
         left join cluster c on h.cluster_id = c.id
         left join component comp on h.id = comp.host_id
@@ -65,7 +65,7 @@
         select
         <include refid="baseColumnsV2">
             <property name="alias" value="h"/>
-        </include>, c.name as cluster_name, count(comp.id) as component_num
+        </include>, c.display_name as cluster_name, count(comp.id) as 
component_num
         from host h
         left join cluster c on h.cluster_id = c.id
         left join component comp on h.id = comp.host_id
@@ -93,18 +93,11 @@
         <include refid="baseColumnsV2">
             <property name="alias" value="h"/>
         </include>
-        ,clus.name as cluster_name
-        from
-        host h
-        inner join
-        (select * from cluster
-        <where>
-            <if test="clusterId != 0">
-                id = #{clusterId}
-            </if>
-        </where>
-        ) clus
+        ,clus.display_name as cluster_name
+        from host h
+        left join cluster clus
         on h.cluster_id = clus.id
+        where h.cluster_id = #{clusterId}
     </select>
 
     <select id="findAllByHostnames"
diff --git 
a/bigtop-manager-dao/src/main/resources/mapper/postgresql/ClusterMapper.xml 
b/bigtop-manager-dao/src/main/resources/mapper/postgresql/ClusterMapper.xml
index 829713c6..54986b93 100644
--- a/bigtop-manager-dao/src/main/resources/mapper/postgresql/ClusterMapper.xml
+++ b/bigtop-manager-dao/src/main/resources/mapper/postgresql/ClusterMapper.xml
@@ -24,10 +24,10 @@
 <mapper namespace="org.apache.bigtop.manager.dao.repository.ClusterDao">
 
     <sql id="baseColumns">
-        id, name, "desc", type, user_group, root_dir, status
+        id, name, display_name, "desc", type, user_group, root_dir, status
     </sql>
     <sql id="baseColumnsV2">
-        ${alias}.id, ${alias}.name, ${alias}."desc", ${alias}.type, 
${alias}.user_group, ${alias}.root_dir, ${alias}.status
+        ${alias}.id, ${alias}.name, ${alias}.display_name, ${alias}."desc", 
${alias}.type, ${alias}.user_group, ${alias}.root_dir, ${alias}.status
     </sql>
 
     <select id="findDetailsById" 
resultType="org.apache.bigtop.manager.dao.po.ClusterPO">
diff --git 
a/bigtop-manager-dao/src/main/resources/mapper/postgresql/HostMapper.xml 
b/bigtop-manager-dao/src/main/resources/mapper/postgresql/HostMapper.xml
index af92a20f..1d02e435 100644
--- a/bigtop-manager-dao/src/main/resources/mapper/postgresql/HostMapper.xml
+++ b/bigtop-manager-dao/src/main/resources/mapper/postgresql/HostMapper.xml
@@ -40,7 +40,7 @@
         select
         <include refid="baseColumnsV2">
             <property name="alias" value="h"/>
-        </include>, c.name as cluster_name, count(comp.id) as component_num
+        </include>, c.display_name as cluster_name, count(comp.id) as 
component_num
         from host h
         left join cluster c on h.cluster_id = c.id
         left join component comp on h.id = comp.host_id
@@ -65,7 +65,7 @@
         select
         <include refid="baseColumnsV2">
             <property name="alias" value="h"/>
-        </include>, c.name as cluster_name, count(comp.id) as component_num
+        </include>, c.display_name as cluster_name, count(comp.id) as 
component_num
         from host h
         left join cluster c on h.cluster_id = c.id
         left join component comp on h.id = comp.host_id
@@ -93,11 +93,12 @@
         <include refid="baseColumnsV2">
             <property name="alias" value="h"/>
         </include>
-        ,clus.name as cluster_name
+        ,clus.display_name as cluster_name
         from
         host h
         left join cluster clus
         on h.cluster_id = clus.id
+        where h.cluster_id = #{clusterId}
     </select>
 
     <select id="findAllByHostnames"
diff --git 
a/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/command/task/CacheFileUpdateTask.java
 
b/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/command/task/CacheFileUpdateTask.java
index 7ae30501..d231a38b 100644
--- 
a/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/command/task/CacheFileUpdateTask.java
+++ 
b/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/command/task/CacheFileUpdateTask.java
@@ -113,6 +113,7 @@ public class CacheFileUpdateTask extends AbstractTask {
         List<HostPO> hostPOList = hostDao.findByIds(hostIds);
 
         clusterInfo = new ClusterInfo();
+        clusterInfo.setName(clusterPO.getName());
         clusterInfo.setUserGroup(clusterPO.getUserGroup());
         clusterInfo.setRootDir(clusterPO.getRootDir());
 
diff --git 
a/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/model/dto/ClusterDTO.java
 
b/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/model/dto/ClusterDTO.java
index 651f248e..b9bec68b 100644
--- 
a/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/model/dto/ClusterDTO.java
+++ 
b/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/model/dto/ClusterDTO.java
@@ -25,6 +25,8 @@ public class ClusterDTO {
 
     private String name;
 
+    private String displayName;
+
     private String desc;
 
     private Integer type;
diff --git 
a/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/model/dto/command/ClusterCommandDTO.java
 
b/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/model/dto/command/ClusterCommandDTO.java
index 1a364b4c..9b97662b 100644
--- 
a/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/model/dto/command/ClusterCommandDTO.java
+++ 
b/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/model/dto/command/ClusterCommandDTO.java
@@ -27,6 +27,8 @@ public class ClusterCommandDTO {
 
     private String name;
 
+    private String displayName;
+
     private String desc;
 
     private Integer type;
diff --git 
a/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/model/req/command/ClusterCommandReq.java
 
b/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/model/req/command/ClusterCommandReq.java
index f0f4a3d2..2ee6b885 100644
--- 
a/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/model/req/command/ClusterCommandReq.java
+++ 
b/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/model/req/command/ClusterCommandReq.java
@@ -32,6 +32,10 @@ public class ClusterCommandReq {
     @Schema(example = "c1")
     private String name;
 
+    @NotEmpty
+    @Schema(example = "c1")
+    private String displayName;
+
     @Schema(example = "desc")
     private String desc;
 
diff --git 
a/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/model/vo/ClusterVO.java
 
b/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/model/vo/ClusterVO.java
index 492e21c0..8568c4b4 100644
--- 
a/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/model/vo/ClusterVO.java
+++ 
b/bigtop-manager-server/src/main/java/org/apache/bigtop/manager/server/model/vo/ClusterVO.java
@@ -27,6 +27,8 @@ public class ClusterVO {
 
     private String name;
 
+    private String displayName;
+
     private String desc;
 
     private Integer type;
diff --git a/bigtop-manager-server/src/main/resources/ddl/MySQL-DDL-CREATE.sql 
b/bigtop-manager-server/src/main/resources/ddl/MySQL-DDL-CREATE.sql
index 79ea4e51..4c1ff01a 100644
--- a/bigtop-manager-server/src/main/resources/ddl/MySQL-DDL-CREATE.sql
+++ b/bigtop-manager-server/src/main/resources/ddl/MySQL-DDL-CREATE.sql
@@ -71,7 +71,8 @@ CREATE TABLE `user`
 CREATE TABLE `cluster`
 (
     `id`                   BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
-    `name`                 VARCHAR(255) DEFAULT NULL COMMENT 'Cluster Name',
+    `name`                 VARCHAR(255) DEFAULT NULL COMMENT 'Unique Name',
+    `display_name`         VARCHAR(255) DEFAULT NULL COMMENT 'Display Name',
     `desc`                 VARCHAR(255) DEFAULT NULL COMMENT 'Cluster 
Description',
     `type`                 INTEGER DEFAULT 1 COMMENT '1-Physical Machine, 
2-Kubernetes',
     `user_group`           VARCHAR(255),
diff --git 
a/bigtop-manager-server/src/main/resources/ddl/PostgreSQL-DDL-CREATE.sql 
b/bigtop-manager-server/src/main/resources/ddl/PostgreSQL-DDL-CREATE.sql
index e2b5ca39..3d133f72 100644
--- a/bigtop-manager-server/src/main/resources/ddl/PostgreSQL-DDL-CREATE.sql
+++ b/bigtop-manager-server/src/main/resources/ddl/PostgreSQL-DDL-CREATE.sql
@@ -55,6 +55,7 @@ CREATE TABLE cluster
 (
     id            BIGINT CHECK (id > 0) NOT NULL GENERATED ALWAYS AS IDENTITY,
     name          VARCHAR(255)                      DEFAULT NULL,
+    display_name  VARCHAR(255)                      DEFAULT NULL,
     "desc"        VARCHAR(255)                      DEFAULT NULL,
     type          INT CHECK (cluster.type > 0) DEFAULT 1,
     user_group    VARCHAR(255),
@@ -68,7 +69,8 @@ CREATE TABLE cluster
     CONSTRAINT uk_name UNIQUE (name)
 );
 
-COMMENT ON COLUMN cluster.name IS 'Cluster Name';
+COMMENT ON COLUMN cluster.name IS 'Unique Name';
+COMMENT ON COLUMN cluster.display_name IS 'Display Name';
 COMMENT ON COLUMN cluster."desc" IS 'Cluster Description';
 COMMENT ON COLUMN cluster.type IS '1-Physical Machine, 2-Kubernetes';
 COMMENT ON COLUMN cluster.status IS '1-healthy, 2-unhealthy, 3-unknown';

Reply via email to